'2016/12'에 해당되는 글 2건
- 2016.12.06 Character Set
- 2016.12.06 오라클 vs MS SQL 함수 비교.
Character Set
. Character set : 한글만 입력한다면 KO16MSWIN949 로 설정 한글과 다른 언어를 혼용 해서 사용 한다면 AL32UTF8 를 설정 하는 것을 권고. 해당 셋이 정렬도 완벽하다. 그리고 꼭 해야 하는 한글 입력 시 ORA-01756: quoted string not properly terminated 발생 하면 클라이언트의 NS_LANG 설정이 잘 먹히지 않은 것. . .bash_profile 적용 하기. --> 이 부분 이 잘 안 된 것 같음. |
SQL> select * from sys.props$ where name like 'NLS_%';
NAME VALUE$ COMMENT$ ------------------------- ---------------------------------------- ---------------------------------------- NLS_RDBMS_VERSION 12.1.0.2.0 RDBMS version for NLS parameters NLS_NCHAR_CHARACTERSET AL16UTF16 NCHAR Character set NLS_NCHAR_CONV_EXCP FALSE NLS conversion exception NLS_LENGTH_SEMANTICS BYTE NLS length semantics NLS_COMP BINARY NLS comparison NLS_DUAL_CURRENCY $ Dual currency symbol NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR Timestamp with timezone format NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR Time with timezone format NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM Time stamp format NLS_TIME_FORMAT HH.MI.SSXFF AM Time format
NAME VALUE$ COMMENT$ ------------------------- ---------------------------------------- ---------------------------------------- NLS_DATE_LANGUAGE AMERICAN Date language NLS_DATE_FORMAT DD-MON-RR Date format NLS_CALENDAR GREGORIAN Calendar system NLS_CHARACTERSET KO16MSWIN949 Character set NLS_NUMERIC_CHARACTERS ., Numeric characters NLS_ISO_CURRENCY AMERICA ISO currency NLS_CURRENCY $ Local currency NLS_TERRITORY AMERICA Territory NLS_LANGUAGE AMERICAN Language
20 rows selected.
SQL> set pagesize 30 SQL> col parameter for a30 SQL> col value for a30 SQL>
SQL> select * from v$nls_parameters;
PARAMETER VALUE CON_ID ------------------------------ ------------------------------ ---------- NLS_LANGUAGE AMERICAN 0 NLS_TERRITORY AMERICA 0 NLS_CURRENCY $ 0 NLS_ISO_CURRENCY AMERICA 0 NLS_NUMERIC_CHARACTERS ., 0 NLS_CALENDAR GREGORIAN 0 NLS_DATE_FORMAT DD-MON-RR 0 NLS_DATE_LANGUAGE AMERICAN 0 NLS_CHARACTERSET KO16MSWIN949 0 NLS_SORT BINARY 0 NLS_TIME_FORMAT HH.MI.SSXFF AM 0 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM 0 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR 0 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR 0 NLS_DUAL_CURRENCY $ 0 NLS_NCHAR_CHARACTERSET AL16UTF16 0 NLS_COMP BINARY 0 NLS_LENGTH_SEMANTICS BYTE 0 NLS_NCHAR_CONV_EXCP FALSE 0
19 rows selected.
SQL> select '보라' d from dual; ERROR: ORA-01756: quoted string not properly terminated
|
export
NLS_LANG=American_America.KO16MSWIN949
export LANG=C
export
EDITOR=vi
'Oracle' 카테고리의 다른 글
오라클 vs MS SQL 함수 비교. (0) | 2016.12.06 |
---|---|
아키텍처 기반 튜닝 원리- SQL 전문가 가이드 (0) | 2015.09.19 |
SQL 기본 및 활용 (0) | 2015.09.19 |
오라클 vs MS SQL 함수 비교.
오라클 vs MS SQL 함수 비교
수식/수치 연산 함수
다음은 Oracle에서 지원하는 수식/수치 연산 함수와 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
절대 값 |
ABS |
ABS |
아크 코사인 |
ACOS |
ACOS |
아크 사인 |
ASIN |
ASIN |
n의 아크 탄젠트 |
ATAN |
ATAN |
n과 m의 아크 탄젠트 |
ATAN2 |
ATN2 |
최소 정수 >= 값 |
CEIL |
CEILING |
코사인 |
COS |
COS |
쌍곡선 코사인 |
COSH |
COT |
지수 값 |
EXP |
EXP |
최대 정수 <= 값 |
FLOOR |
FLOOR |
자연 로그 |
LN |
LOG |
밑이 n인 로그 |
LOG(N) |
해당 없음 |
상용 로그 |
LOG(10) |
LOG10 |
나머지 연산자 |
MOD |
USE MODULO (%) OPERATOR |
거듭제곱 |
POWER |
POWER |
난수 |
해당 없음 |
RAND |
반올림 |
ROUND |
ROUND |
숫자 부호 표시 |
SIGN |
SIGN |
사인 |
SIN |
SIN |
쌍곡선 사인 |
SINH |
해당 없음 |
제곱근 |
SQRT |
SQRT |
탄젠트 |
TAN |
TAN |
쌍곡선 탄젠트 |
TANH |
해당 없음 |
잘라내기 |
TRUNC |
해당 없음 |
목록의 최대값 |
GREATEST |
해당 없음 |
목록의 최소값 |
LEAST |
해당 없음 |
NULL일 때 숫자 변환 |
NVL |
ISNULL |
문자열 함수
다음은 Oracle에서 지원하는 문자열 함수 및 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
문자를 ASCII로 변환 |
ASCII |
ASCII |
문자열 연결 |
CONCAT |
(식 + 식) |
ASCII를 문자로 변환 |
CHR |
CHAR |
문자열의 문자 시작 위치 반환(왼쪽부터) |
INSTR |
CHARINDEX |
소문자로 변환 |
LOWER |
LOWER |
대문자로 변환 |
UPPER |
UPPER |
문자열의 왼쪽 채우기 |
LPAD |
해당 없음 |
선행 공백 제거 |
LTRIM |
LTRIM |
후행 공백 제거 |
RTRIM |
RTRIM |
문자열의 패턴 시작 위치 |
INSTR |
PATINDEX |
문자열을 여러 번 반복 |
RPAD |
REPLICATE |
문자열의 발음 기호 |
SOUNDEX |
SOUNDEX |
반복되는 공백 문자열 |
RPAD |
SPACE |
수치 데이터에서 변환된 문자 데이터 |
TO_CHAR |
STR |
부분 문자열 |
SUBSTR |
SUBSTRING |
문자 바꾸기 |
REPLACE |
STUFF |
문자열에서 각 단어의 첫 문자를 대문자로 만들기 |
INITCAP |
해당 없음 |
문자열 번역 |
TRANSLATE |
해당 없음 |
문자열 길이 |
LENGTH |
DATELENGTH 또는 LEN |
목록에서 가장 큰 문자열 |
GREATEST |
해당 없음 |
목록에서 가장 작은 문자열 |
LEAST |
해당 없음 |
NULL일 때 문자열 변환 |
NVL |
ISNULL |
날짜 함수
다음은 Oracle에서 지원하는 날짜 함수 및 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
날짜 추가 |
(날짜 열의 +/- 값) 또는 ADD_MONTHS |
DATEADD |
날짜 차이 |
(날짜 열의 +/- 값) 또는 MONTHS_BETWEEN |
DATEDIFF |
현재 날짜와 시간 |
SYSDATE |
GETDATE() |
달의 마지막 날 |
LAST_DAY |
해당 없음 |
표준 시간대 변환 |
NEW_TIME |
해당 없음 |
다음 날의 요일 |
NEXT_DAY |
해당 없음 |
날짜의 문자열 표시 |
TO_CHAR |
DATENAME |
날짜의 정수 표시 |
TO_NUMBER(TO_CHAR)) |
DATEPART |
날짜 반올림 |
ROUND |
CONVERT |
날짜 잘라내기 |
TRUNC |
CONVERT |
문자열을 날짜로 |
TO_DATE |
CONVERT |
NULL일 때 날짜 변환 |
NVL |
ISNULL |
변환 함수
다음은 Oracle에서 지원하는 변환 함수 및 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
숫자를 문자로 |
TO_CHAR |
CONVERT |
문자를 숫자로 |
TO_NUMBER |
CONVERT |
날짜를 문자로 |
TO_CHAR |
CONVERT |
문자를 날짜로 |
TO_DATE |
CONVERT |
16진수를 이진수로 |
HEX_TO_RAW |
CONVERT |
이진수를 16진수로 |
RAW_TO_HEX |
CONVERT |
기타 행 수준 함수
다음은 Oracle에서 지원하는 기타 행 수준 함수 및 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
NULL이 아닌 첫째 식 반환 |
DECODE |
COALESCE |
현재 시퀀스 값 |
CURRVAL |
해당 없음 |
다음 시퀀스 값 |
NEXTVAL |
해당 없음 |
식1 = 식2일 때 NULL 반환 |
DECODE |
NULLIF |
사용자의 로그인 ID 번호 |
UID |
SUSER_ID |
사용자의 로그인 이름 |
USER |
SUSER_NAME |
사용자의 데이터베이스 ID 번호 |
UID |
USER_ID |
사용자의 데이터베이스 이름 |
USER |
USER_NAME |
현재 사용자 |
CURRENT_USER |
CURRENT_USER |
사용자 환경(감사 추적) |
USERENV |
해당 없음 |
CONNECT BY 절의 수준 |
LEVEL |
해당 없음 |
집계 함수
다음은 Oracle에서 지원하는 집계 함수 및 그에 상응하는 Microsoft SQL Server의 함수를 정리한 표입니다.
함수 설명 |
Oracle |
Microsoft SQL Server |
평균 |
AVG |
AVG |
개수 |
COUNT |
COUNT |
최대값 |
MAX |
MAX |
최소값 |
MIN |
MIN |
표준 편차 |
STDDEV |
STDEV 또는 STDEVP |
합계 |
SUM |
SUM |
분산 |
VARIANCE |
VAR 또는 VARP |
'Oracle' 카테고리의 다른 글
Character Set (0) | 2016.12.06 |
---|---|
아키텍처 기반 튜닝 원리- SQL 전문가 가이드 (0) | 2015.09.19 |
SQL 기본 및 활용 (0) | 2015.09.19 |