함수 설명 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
절대 값 | ABS | ABS | Y |
아크 코사인 | ACOS | ACOS | Y |
아크 사인 | ASIN | ASIN | Y |
n의 아크 탄젠트 | ATAN | ATAN | Y |
n과 m의 아크 탄젠트 | ATAN2 | ATN2 | N |
최소 정수 >= 값 | CEIL | CEILING | N |
코사인 | COS | COS | Y |
쌍곡선 코사인 | COSH | COT | N |
지수 값 | EXP | EXP | Y |
최대 정수 <= 값 | FLOOR | FLOOR | Y |
자연 로그 | LN | LOG | N |
밑이 n인 로그 | LOG(N) | 해당 없음 | N |
상용 로그 | LOG(10) | LOG10 | N |
나머지 연산자 | MOD | USE MODULO (%) OPERATOR | N |
거듭제곱 | POWER | POWER | Y |
난수 | 해당 없음 | RAND | N |
반올림 | ROUND | ROUND | Y |
숫자 부호 표시 | SIGN | SIGN | Y |
사인 | SIN | SIN | Y |
쌍곡선 사인 | SINH | 해당 없음 | N |
제곱근 | SQRT | SQRT | Y |
탄젠트 | TAN | TAN | Y |
쌍곡선 탄젠트 | TANH | 해당 없음 | N |
잘라내기 | TRUNC | 해당 없음 | N |
목록의 최대값 | GREATEST | 해당 없음 | N |
목록의 최소값 | LEAST | 해당 없음 | N |
NULL일 때 숫자 변환 | NVL | ISNULL | N |
함수 설명 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
문자를 ASCII로 변환 | ASCII | ASCII | Y |
문자열 연결 | CONCAT | (식 + 식) | N |
ASCII를 문자로 변환 | CHR | CHAR | N |
문자열의 문자 시작 위치 반환(왼쪽부터) | INSTR | CHARINDEX | N |
소문자로 변환 | LOWER | LOWER | Y |
대문자로 변환 | UPPER | UPPER | Y |
문자열의 왼쪽 채우기 | LPAD | 해당 없음 | N |
선행 공백 제거 | LTRIM | LTRIM | Y |
후행 공백 제거 | RTRIM | RTRIM | Y |
문자열의 패턴 시작 위치 | INSTR | PATINDEX | N |
문자열을 여러 번 반복 | RPAD | REPLICATE | N |
문자열의 발음 기호 | SOUNDEX | SOUNDEX | Y |
반복되는 공백 문자열 | RPAD | SPACE | N |
수치 데이터에서 변환된 문자 데이터 | TO_CHAR | STR | N |
부분 문자열 | SUBSTR | SUBSTRING | N |
문자 바꾸기 | REPLACE | STUFF | N |
문자열에서 각 단어의 첫 문자를 대문자로 만들기 | INITCAP | 해당 없음 | N |
문자열 번역 | TRANSLATE | 해당 없음 | N |
문자열 길이 | LENGTH | DATELENGTH 또는 LEN | N |
목록에서 가장 큰 문자열 | GREATEST | 해당 없음 | N |
목록에서 가장 작은 문자열 | LEAST | 해당 없음 | N |
NULL일 때 문자열 변환 | NVL | ISNULL | N |
함수 설명 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
날짜 추가 | (날짜 열의 +/- 값) 또는 ADD_MONTHS | DATEADD | N |
날짜 차이 | (날짜 열의 +/- 값) 또는 MONTHS_BETWEEN | DATEDIFF | N |
현재 날짜와 시간 | SYSDATE | GETDATE() | N |
달의 마지막 날 | LAST_DAY | 해당 없음 | N |
표준 시간대 변환 | NEW_TIME | 해당 없음 | N |
다음 날의 요일 | NEXT_DAY | 해당 없음 | N |
날짜의 문자열 표시 | TO_CHAR | DATENAME | N |
날짜의 정수 표시 | TO_NUMBER(TO_CHAR)) | DATEPART | N |
날짜 반올림 | ROUND | CONVERT | N |
날짜 잘라내기 | TRUNC | CONVERT | N |
문자열을 날짜로 | TO_DATE | CONVERT | N |
NULL일 때 날짜 변환 | NVL | ISNULL | N |
함수 설명 | Oracle | Microsoft SQL Server | 함수이름동일여부 | 비고 |
NULL이 아닌 첫째 식 반환 | DECODE | COALESCE | N | case문으로 |
현재 시퀀스 값 | CURRVAL | 해당 없음 | N | |
다음 시퀀스 값 | NEXTVAL | 해당 없음 | N | |
식1 = 식2일 때 NULL 반환 | DECODE | NULLIF | N | case문으로 |
사용자의 로그인 ID 번호 | UID | SUSER_ID | N | |
사용자의 로그인 이름 | USER | SUSER_NAME | N | |
사용자의 데이터베이스 ID 번호 | UID | USER_ID | N | |
사용자의 데이터베이스 이름 | USER | USER_NAME | N | |
현재 사용자 | CURRENT_USER | CURRENT_USER | Y | |
사용자 환경(감사 추적) | USERENV | 해당 없음 | N | |
CONNECT BY 절의 수준 | LEVEL | 해당 없음 | N |
함수 설명 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
평균 | AVG | AVG | Y |
개수 | COUNT | COUNT | Y |
최대값 | MAX | MAX | Y |
최소값 | MIN | MIN | Y |
표준 편차 | STDDEV | STDEV 또는 STDEVP | N |
합계 | SUM | SUM | Y |
분산 | VARIANCE | VAR 또는 VARP | N |
Oracle | Microsoft SQL Server |
DECODE (테스트_값, 식1, 값1 [[,식2, 값2] [U]] [,기본_값] ) CREATE VIEW STUDENT_ADMIN.STUDENT_GPA |
CASE 입력_식 WHEN when_식 THEN 결과_식 [[WHEN when_식 THEN 결과_식] […]] [ELSE else_결과_식] END CREATE VIEW STUDENT_ADMIN.STUDENT_GPA |
변환 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
문자를 숫자로 | TO_NUMBER(’10’) | CONVERT(numeric, ’10’) | N |
숫자를 문자로 | TO_CHAR(10) | CONVERT(char, 10) | N |
문자를 날짜로 | TO_DATE(’04-JUL-97′) | CONVERT(datetime, ’04-JUL-97′) | N |
TO_DATE(’04-JUL-1997′, | CONVERT(datetime, ’04-JUL-1997′) | N | |
‘dd-mon-yyyy’) | CONVERT(datetime, ‘July 4, 1997’) | N | |
TO_DATE(‘July 4, 1997’, | N | ||
‘Month dd, yyyy’) | N | ||
날짜를 문자로 | TO_CHAR(sysdate) | CONVERT(char, GETDATE()) | N |
TO_CHAR(sysdate, ‘dd mon yyyy’) | CONVERT(char, GETDATE(), 106) | N | |
TO_CHAR(sysdate, ‘mm/dd/yyyy’) | CONVERT(char, GETDATE(), 101) | N | |
16진수를 이진수로 | HEXTORAW(‘1F’) | CONVERT(binary, ‘1F’) | N |
이진수를 16진수로 | RAWTOHEX | CONVERT(char, 이진_열) | N |
(binary_column) | N |
연산자 | Oracle | Microsoft SQL Server | 함수이름동일여부 |
같음 | (=) | (=) | |
큼 | (>) | (>) | |
작음 | (<) | (<) | |
크거나 같음 | (>=) | (>=) | |
작거나 같음 | (<=) | (<=) | |
같지 않음 | (!=, <>, ^=) | (!=, <>, ^=) | |
크지 않음, 작지 않음 | 해당 없음 | !> , !< | |
집합의 구성원에 있음 | IN | IN | |
집합의 구성원에 없음 | NOT IN | NOT IN | |
집합에 있는 임의의 값 | ANY, SOME | ANY, SOME | |
집합에 있는 | != ALL, <> ALL, < ALL, | != ALL, <> ALL, < ALL, | |
모든 값 | > ALL, <= ALL, >= ALL, | > ALL, <= ALL, >= ALL, | |
!= SOME, <> SOME, | != SOME, <> SOME, | ||
< SOME, > SOME, | < SOME, > SOME, | ||
<= SOME, >= SOME | <= SOME, >= SOME | ||
패턴과 같음 | LIKE | LIKE | |
패턴과 같지 않음 | NOT LIKE | NOT LIKE | |
x와 y 사이의 값 | BETWEEN x AND y | BETWEEN x AND y | |
사이에 있지 않은 값 | NOT BETWEEN | NOT BETWEEN | |
값이 있음 | EXISTS | EXISTS | |
값이 없음 | NOT EXISTS | NOT EXISTS | |
값이 NULL이거나 NULL이 아님 | IS NULL, IS NOT NULL | 같습니다. 이전 버전과의 호환성을 위해 = NULL, != NULL도 사용할 수 있지만 권장되지 않습니다. |
IS NULL, IS NOT NULL 로 변경 |
Oracle | Microsoft SQL Server |
SELECT * FROM STUDENT_ADMIN.STUDENT WHERE LNAME LIKE ‘A%’ OR LNAME LIKE ‘B%’ OR LNAME LIKE ‘C%’ |
SELECT * FROM STUDENT_ADMIN.STUDENT WHERE LNAME LIKE ‘[ABC]%’ |