DBMS 36

[MY-SQL] Server 버전채크

MySQL 버전 확인 방법MySQL 버전 확인MySQL의 버전을 확인하는 방법은 몇 가지가 있습니다. 일반적으로 커맨드 라인에서 간단한 명령어를 통해 확인할 수 있습니다.커맨드 라인에서 확인하는 방법MySQL을 명령 줄에서 실행하고 아래 명령어를 입력하면 버전을 확인할 수 있습니다:mysql --version또는 MySQL에 접속한 후 다음 쿼리를 실행하여 자세한 버전 정보를 확인할 수 있습니다:SELECT VERSION();이 명령어는 현재 사용 중인 MySQL 서버의 버전을 반환합니다. 이를 통해 데이터베이스의 버전 정보를 확인하고, 필요한 경우 업데이트를 고려할 수 있습니다. 관련글 ..

DBMS/MY-SQL 2025.08.04

[MY-SQL] 오라클의 dual 사용하기

MySQL에서 DUAL 테이블의 사용DUAL 테이블의 필요성MySQL은 데이터를 조회할 때 DUAL 테이블을 명시적으로 사용할 필요가 없습니다. DUAL은 Oracle과 MS-SQL에서 사용하는 가상 테이블로, 단일 기초의 SELECT 문에서 사용됩니다. MySQL에서는 그냥 원하는 데이터를 SELECT 하면 됩니다.MS-SQL / Oracle에서 DUAL 사용 예시SELECT column_name FROM DUAL;MySQL에서 DUAL 없이 사용하는 방법단순히 DUAL을 사용하지 않고 원하는 데이터를 직접 조회할 수 있습니다:SELECT column_name; -- DUAL 없이도 직접 조회 가능따라서 MySQL에서는 더욱 간결하게 쿼리를 작성할 수 있습니다. 관련글 ..

DBMS/MY-SQL 2025.07.17

[MS-SQL] Join 종류와 사용방법

MS-SQL Join 종류와 사용방법을 확인해보자.Join이란?두개이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법입니다.테이블을 연결하려면 적어도 하나 의 Column은 서로 공유되어야 한다.1. INNER Join'기준 테이블'과 Join한 테이블의 중복된 값을 보여주며 기준테이블과 Join 테이블이 모두 가지고 있는 데이터가 검색됩니다. SELECT * FROM '기준 테이블' -- 테이블 검색 SELECT * FROM 'Join할 테이블' -- 테이블 검색 SELECT * -- 조회할 Column FROM '기준 테이블' INNER Join 'Join할 테이블' ON '기준 테이블.기준키' = ..

DBMS/MS-SQL 2021.01.16

[MS-SQL] 테이블 및 컬럼 Description 추가, 수정하기

MS-SQL Table과 Column의 설명 및 정보를 추가 및 수정 해보자. 테이블 또는 컬럼의 Description을 수정할때 우선 해당 Description이 있는지 확인을 해야한다.해당 Description을 검색하는 방법은 [MS-SQL] 테이블 및 컬럼 Description 및 정보 가져오기 에서 확인 가능하다.그 이후 아래 명령어로 추가 또는 수정하면 된다.정보 추가 (AddExtendedProperty) - 정보가 Null인건 추가가 안된것정보 수정 (UpdateExtendedProperty) - 기존에 있는 Description 수정 DECLARE @DB_USER NVARCHAR(100) = 'dbo'; -- 거의 dbo일태지면 가끔 다름 소유주? ..

DBMS/MS-SQL 2019.05.15

[MS-SQL][Exception] 산술 오버플로 오류

MS-SQL Exception중 산술 오버플로 오류를 해결해보자.산술 오버플로 오류는 간단히 말해서 숫자형의 허용 범위를 넘어서 발생한 오류이다.필자는 NUMERIC를 사용할때 자주 발생한거 같다. (소수점까지의 합계나 평균등을 구할때)아래처럼 명령을 내릴경우 에러가 발생한다. SELECT CONVERT(NUMERIC(3,2), 10.1125481 / 0.3) -- 에러발생해결방법은 간단하다 범위를 늘려주면 간단히 해결된다. SELECT CONVERT(NUMERIC(5,2), 10.1125481 / 0.3) -- 정상작동INT형은 약 21억까지 가져오는데 혹 INT형에서 문제가 생기면 BIGINT로 변경해주면면 해결된다.(출력에는 21억까지 나올수가 없는데 내부에서 계산도중 21억이 넘어가..

DBMS/MS-SQL 2019.05.07

[MS-SQL] 소계 출력시 총계 대비 비율(%) 구하기 (RATIO_TO_REPORT)

ORACLE의 RATIO_TO_REPORT를 MS-SQL에서 구현해보자.오라클의 RATIO_TO_REPORT와 같은 함수가 MS-SQL에는 없지만소계를 구하면서 해당 소계가 전체 대비 비율(%)이 어떻게 되는지는 아래와 같이 구할수 있다. SELECT CNT_GROUP AS [그룹] , SUM(CNT) AS [소계] , SUM(CNT) * 100 / SUM(SUM(CNT)) OVER() AS [비율] , SUM(SUM(CNT)) OVER() AS [총계] FROM ( SELEC..

DBMS/MS-SQL 2019.05.07

[MS-SQL] 루프문(WHILE)으로 일일 집계 쿼리 일년치 한번에 돌리기

일별 집계 프로시져를 한번에 1년치를 돌려보자.집계 쿼리를 새로 만들거나 혹은 집계 방식이 변경되었을경우 해당 집계를 다시 해줄경우가 있다.몇일 안되면 그냥 복붙으로 돌릴수도 있지만 몇개월 이상 재집계 하는경우 아래처럼 루프문(WHILE)을 이용하면 간편하다. DECLARE @START_DATE DATETIME = '2018-01-01' -- 시작날짜 DECLARE @END_DATE DATETIME = '2018-12-31' -- 종료날짜 DECLARE @DATE_STRING VARCHAR(10) = NULL -- 프로시저에서 VARCHAR형태로 받기 때문에 한번 변형해주기 위한 변수 WHILE @START_DATE 관련글 ..

DBMS/MS-SQL 2019.05.02

[MS-SQL] 뷰(View)에서 해당 테이블이 사용되는지 검색해보기

해당 테이블이 뷰(VIEW)에서 사용중인지 검색해보자.뷰에 해당 단어가 있는지 검색하고 싶을때 아래명령을 통하여 검색한다.프로시저, 뷰, 트리거검색은 from만 바꿔주면 된다.(Sys.프로시저, sys.트리거, sys.뷰) DECLARE @SEARCH_TEXT NVARCHAR(MAX) = '검색텍스트'; SELECT OBJECT_NAME(OBJECT_ID) AS NAME , OBJECT_DEFINITION(OBJECT_ID) AS CONTENTS FROM SYS.VIEWS -- PROCEDURES, TRIGGERS WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%' + @SEARCH_TEXT + '%' ORDER BY..

DBMS/MS-SQL 2019.04.29

[MS-SQL] 트리거(TRIGGER)에서 해당 테이블이 사용되는지 검색해보기

해당 테이블이 트리거(Trigger)에서 사용중인지 검색해보자.트리거거에 해당 단어가 있는지 검색하고 싶을때 아래명령을 통하여 검색한다.프로시저, 뷰, 트리거검색은 from만 바꿔주면 된다.(Sys.프로시저, sys.트리거, sys.뷰) DECLARE @SEARCH_TEXT NVARCHAR(MAX) = '검색텍스트'; SELECT OBJECT_NAME(OBJECT_ID) AS NAME , OBJECT_DEFINITION(OBJECT_ID) AS CONTENTS FROM SYS.TRIGGERS -- PROCEDURES, VIEWS WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%' + @SEARCH_TEXT + '%' ..

DBMS/MS-SQL 2019.04.29

[MS-SQL] 특정문자 검색 (프로시저, 트리거, 뷰, 함수 모두 검색하기)

MS-SQL 뷰(View), 프로시져(Procedure), 트리거(Trigger), 함수(Function) 내부 단어 검색하기. 해당 테이블이 어디에서 사용하는지 한번에 검색하고 싶을때 아래명령을 통하여 검색하면된다.Function의 경우는 스칼라와 테이블반환이 구분되어 검색된다.(테스트 해본 결과 뷰(VIEW), 프로시져(SQL_STORED_PROCEDURE), 트리거(SQL_TRIGGER), 함수(SQL_SCALAR_FUNCTION & SQL_TABLE_VALUED_FUNCTION) 타입이 검색되는부분은 확인됨)DECLARE @SEARCH_TEXT NVARCHAR(MAX) = '검색텍스트'; SELECT B.NAME AS NAME -- 이름 , B.TYPE_DE..

DBMS/MS-SQL 2019.04.29