728x90
여러 가지가 있겠지만 일단 문자열 부분에서의 차이만 간략히 정리할 것임
Oracle DB | MySQL | ||
' ' 부호 ( 작은 따옴표 (Apostrophe) ) |
문자열 부호 | - 문자열 부호 - 별명 부호 |
|
" " 부호 ( 큰 따옴표 (Quotation Mark) ) |
별명 부호 ( 별명( ALIAS ) 지정 시 공백 또는 특수문자 포함하거나 대소문자 구분할 때 사용 ) |
- 문자열 부호 - 별명 부호 |
|
` ` 부호 ( 역 따옴표 (Grave Accent) ) |
· | 식별자 부호 ( 이미 지정된 별명 참조 시 사용. 식별자 부호가 아니라 문자열 부호를 사용하게 되면 문자열 리터럴로 처리됨 ) |
|
대소문자 구분 | 쿼리 | X ( 테이블명이나 칼럼명은 기본적으로 대문자로 생성됨 ) |
X |
문자열 데이터 | O | X ( 단, 컬럼명 별명 지정 시 따옴표( ' 나 " ) 사용하면 대소문자 구분 ) |
|
쿼리 실행 순서 | 5) SELECT 컬럼명 1) FROM 테이블명 [ON 조건식] 2) WHERE 조건식 3) GROUP BY 컬럼명 ( or 표현식 ) 4) HAVING 조건식 6) ORDER BY 컬럼명 ( or 표현식 ) |
||
별칭 사용에 대한 유의 사항 | - FROM 절에서 테이블 별칭 지정 시 그 후 실행되는 WHERE 절이나 SELECT 절 에서는 별칭 사용 해야 함 - SELECT 절에서 컬럼 별칭 지정 시 그 후 실행되는 ORDER BY 절에서 별칭 사용 가능 |
||
SELECT 절에서 컬럼명에 별칭 지정 시 다른 절에서 사용 가능한 범위 |
ORDER BY | - GROUP BY - HAVING - ORDER BY ( GROUP BY 절, HAVING 절은 SELECT 절보다 먼저 실행되는 절로, 원래 별칭 사용 불가능하지만 기능 확장으로 예외적으로 사용 가능 ) |
* 칼럼에 별명 부여
ex) PLAYER_NAME 칼럼에 "선수 이름" 이라고 별칭 짓기 |
Oracle DB | MySQL |
PLAYER_NAME [AS] "선수 이름" | PLAYER_NAME [AS] "선수 이름" PLAYER_NAME [AS] '선수 이름' |
* 조건에 맞는 문자형 데이터 조회 시 대소문자
ex) "ABC" 검색 | Oracle DB | MySQL |
대소문자 구분 | col = 'ABC' | BINARY col = 'ABC' BINARY col = "ABC" |
대소문자 구분 안 함 | UPPER( col ) = 'ABC' | col = 'ABC' col = "ABC" |
※ BINARY -- 문자열을 이진 문자열로 변환 ( 형 변환 연산자 in MySQL )
( 문자 단위가 아닌 숫자 바이트 값을 사용하여 문자열 비교를 바이트 단위로 수행 )
( https://hyunjiishailey.tistory.com/517 )
반응형
'프로그래밍 언어 ( Programming Language ) > SQL' 카테고리의 다른 글
[SQL][Oracle] 데이터 타입 ( Data Type ) (0) | 2022.01.12 |
---|---|
[SQL][MySQL] DML - WITH (0) | 2022.01.10 |
[SQL][MySQL] 복합문 ( Compound Statement Syntax ) - 흐름 제어문 ( CASE, IF, LOOP 등 ), 선언문 ( DECLARE ), BEGIN ... END (0) | 2022.01.05 |
[SQL] 조인 ( Join ) (0) | 2022.01.05 |
[SQL] 연산자 ( Operator ) ( + 다중 행 연산자, 집합 연산자 ) (0) | 2022.01.05 |