DB/SQL

SQL 연산자

도어누들 2022. 12. 23. 09:09

 

 

LIKE 연산자

 

열에서 지정된 패턴을 검색하기 위해 절에서 사용

%는 포함 부분이라고 생각하면 된다

_는 대체문자라고 생각하면 된다.

 

 

LIKE 연산자 syntax

 

 

 

와일드카드

문자는 문자열에서 하나 이상의 문자를 대체하는 데 사용

위의 % 나 _ 이 와일드 카드라고 할 수 있다.

 

 

ISNULL , IS NOT NULL 연산자

NULL 값은 0 값이나 공백이 포함된 필드와 다릅니다.

NULL 값이 있는 필드는 레코드 생성 중에 비어 있는 필드입니다.

NULL값 테스트 하기 : IS NULL 또는 IS NOT NULL 연산자를 사용(특수 연산자이다.)

 

예시

 

db마다 null을 확인하는 함수는 다르다

mssql - isnull

oracle - NVL

mysql - IFNULL 

헷갈리니까 잘 정리해두자.

 

IN 연산자

 

IN연산자를 사용하면 WHERE절 에 여러 값을 지정할 수 있습니다.

 

IN syntax

또는

IN syntax

여러 형태로 응용해서 쓸 수 있다.

 

IN 연산자 예시

 

 

BETWEEN  A AND B 연산자

BETWEEN연산자 는 주어진 범위 내에서 값을 선택

데이터가 숫자, 날짜, 텍스트 거의 다 올 수 있다.

시작과 끝 값이 포함이다.

 

 

비트윈 syntax

 

 

범위에 벗어난 데이터를 표시하려면 NOT BETWEEN을 쓴다.

 

 

NOT BETWEEN 예시

 

SQL 별칭(Aliases)

 

테이블 또는 테이블의 열에 임시 이름을 지정하는 데 사용

별명은 종종 열 이름을 더 읽기 쉽게 만드는 데 사용

AS키워드로 생성

 

컬럼명 AS syntax

 

 

테이블 명 as syntax

 

 

별칭에 공백문자, 특수문자 대소문자를 구별하고 싶으면 별칭명에 큰따옴표를 사용한다.

(왠만하면 쓰지말자...)

 

 

 

UNION 연산자

 

둘 이상의 SELECT 명령문의 결과 집합을 결합하는데 사용한다.

UNION 내의 모든 SELECT 명령문에는 동일한 수의 열이 있어야 합니다.

열의 데이터 유형도 유사해야 합니다

모든 명령문의 열도 SELECT 동일한 순서여야 합니다.

결과 집합의 열 이름은 일반적으로 첫 번째 SELECT 문의 열 이름과 같습니다.

WHERE 절도 사용이 가능하다.

 

UNION SYNTAX

 

UNION ALL

 

UNION기본적으로 고유한 값만 선택합니다. 

중복 값을 허용하려면 UNION ALL한다.

 

 

UNION ALL SYNTAX

 

EXISTS 연산자

하위 쿼리에 레코드가 있는지 테스트하는 데 사용

하나 이상의 레코드를 반환하면 연산자는 TRUE를 반환

 

EXISTS 구문

 

서브쿼리 EXISTS 예시

 

 

ANY연산자

ANY범위의 값 중 하나에 대해 작업이 참인 경우 조건이 참이 됨을 의미한다.

 

any 연산자 신택스

 

 

 

ALL 연산자

ALL범위의 모든 값에 대해 연산이 참인 경우에만 조건이 참이 됨을 의미한다.

SELECT, WHERE및 HAVING문과 함께 사용한다.

결과로 부울 값을 반환한다.

 

SELECT ALL 연산자 신택스

 

 

다음 SQL 문은 조건이 모두 TRUE 이기 때문에 모든 제품 이름을 나열합니다.

 

 

WHERE 절에 ALL 연산자 신택스

 

 

다음 SQL문은 조건이 모두 TRUE 아니기 때문에 FALSE를 반환한다.