MySQL과 MSSQL은 둘 다 관계형 데이터베이스 시스템으로, 데이터를 저장하고 관리하는 데 사용됩니다. 그러나 두 시스템은 문법에서 차이가 있습니다.
먼저, 데이터 타입에서 차이가 있습니다. MySQL은 BOOLEAN, SET, ENUM 등의 데이터 타입을 사용할 수 있지만, MSSQL은 해당 데이터 타입을 지원하지 않습니다. 반면에 MSSQL은 MONEY, SMALLMONEY, DATETIME2, DATETIMEOFFSET 등의 데이터 타입을 사용할 수 있지만, MySQL은 해당 데이터 타입을 지원하지 않습니다.
또한, SQL 문법에서도 차이가 있습니다. 예를 들어, LIMIT 문법은 MySQL에서만 사용할 수 있습니다. 대신 MSSQL은 TOP 구문을 사용하여 비슷한 결과를 얻을 수 있습니다. 또한, MySQL은 백틱(`)을 사용하여 테이블 이름 등을 감쌀 수 있지만, MSSQL은 대괄호([])를 사용합니다.
mssql과 mysql의 많이 사용하는 문법 중 형식이 다른 것에 대해 알려드리겠습니다.
날짜/시간 형식
mssql: GETDATE() 함수를 사용하여 현재 날짜와 시간을 가져옵니다. 날짜/시간 형식은 yyyy-mm-dd hh:mm:ss.sss입니다.
mysql: NOW() 함수를 사용하여 현재 날짜와 시간을 가져옵니다. 날짜/시간 형식은 yyyy-mm-dd hh:mm:ss입니다.
문자열 연결
mssql: '+' 기호를 사용하여 문자열을 연결합니다.
mysql: CONCAT() 함수를 사용하여 문자열을 연결합니다.
LIMIT 구문
mssql: TOP 구문을 사용하여 검색 결과에서 상위 n개의 행을 가져옵니다.
예: SELECT TOP 10 * FROM table_name;
mysql: LIMIT 구문을 사용하여 검색 결과에서 상위 n개의 행을 가져옵니다.
예: SELECT * FROM table_name LIMIT 10;
NULL 값 처리
mssql: ISNULL() 함수를 사용하여 NULL 값을 다른 값으로 대체합니다.
예: SELECT ISNULL(column_name, 'N/A') FROM table_name;
mysql: IFNULL() 함수를 사용하여 NULL 값을 다른 값으로 대체합다.
예: SELECT IFNULL(column_name, 'N/A') FROM table_name;
날짜/시간 차이 계산
mssql: DATEDIFF() 함수를 사용하여 두 날짜/시간 간의 차이를 계산합니다.
예: SELECT DATEDIFF(day, start_date, end_date) FROM table_name;
mysql: TIMESTAMPDIFF() 함수를 사용하여 두 날짜/시간 간의 차이를 계산합다.
예: SELECT TIMESTAMPDIFF(day, start_date, end_date) FROM table_name;
끝.
'Dev > Etc' 카테고리의 다른 글
암호화 알고리즘 ED25519, RSA 차이가 뭘까요? (0) | 2023.05.10 |
---|---|
몇 분 만에 Linux에 Git을 설치하는 방법 (0) | 2023.03.19 |
Oracle Linux 에 Docker 및 Docker Compose를 설치하는 방법 (0) | 2023.03.19 |
yum과 dnf 차이점은? (0) | 2023.03.19 |
Failed to set locale, defaulting to C.UTF-8 오류 해결 (0) | 2023.03.17 |