Study/SQL

Select 문 정리

kdhoooon 2021. 4. 13. 16:00

Select


▶ 전체 데이터 검색

테이블의 모든 데이터를 검색 할 때 사용한다.

SELECT * FROM 테이블명;

 

▶ 특정 컬럼 검색

SELECT 뒤에 컬럼명을 콤마(,)로 구별해서 나열

SELECT 컬럼명1, 컬럼명2, 컬럼명3 FROM 테이블명;

 

 

▶ 컬럼에 Alias 부여

컬럼에 대한 ALIAS(별칭)을 부여해서 나타내는 칼럼의 HEADING을 변경할 수 있음

SELECT 컬럼명1 AS 별칭명1, 컬럼명2 AS 별칭명2, 컬럼명3 AS 별칭명3 FROM 테이블명;

실행화면

 

▶ 컬럼의 합성(Concatenation)

문자열을 결합할때 사용

SLEECT CONCAT(컬럼명1, '-', 컬럼명2) AS '별칭1-별칭2' FROM 테이블명;

실행화면

 

▶ 정렬하기

기본적으로는 오름차순으로 정렬한다. 내림차순으로 정럴하기 위해는 desc 를 붙여준다.

//컬럼명1을 기준으로 오름차순
SELECT 컬럼명1, 컬럼명2 FROM 테이블명 ORDER BY 컬럼명1;

//컬럼명1을 기준으로 내림차순
SELECT 컬럼명1, 컬럼명2 FROM 테이블명 ORDER BY 컬럼명1 DESC;

 

▶ 특정 행 검색 - Where 절

조건식 : 컬럼이름이나 표현식의 상수, 연산자로 구성

SELECT 칼럼명
FROM 테이블명
WHERE 조건식
ORDER BY 칼럼이나 표현식(ASC 또는 DESC);

 

⊙ 산술비교 연산자

가격이 1500이상인 제품 검색 예시

 

⊙ 논리연산자

제조사가 오리온인 제품의 제품명과 가격

 

 IN 키워드

in키워드는 또는 으로 사용

컬럼2의 값1 또는 값2의 값을 모두 출력.

SELECT 컬럼명1 FROM 테이블명 WHERE 컬럼2 IN (값1, 값2)

가격이 1050 원 또는 1500 원인 제품

 

LIKE 키워드

특정 문자를 퐘한 값을 모두 출력하기 위해 사용.

%를 사용하면 여러개의 문자중 하나라도 있으면사용가능

_는 단하나의 문자를 뽑기위해 사용

//컬럼명1에 라가 들어간 제품을 출력할 때
SELECT 컬럼명2 FROM 테이블명 WHERE 컬럼명1 LIKE '%라%';

 

▶ 함수의 사용

 

⊙ UCASE, UPPER (대문자)

모든 문자를 대문자로 표현할 때 사용. 

테이블에 없어도 사용 가능(단, 테이블에서 검색시에는 'FROM 테이블명'을 붙여야함)

SELECT UPPER('HeLLow woRLD'), UCASE('HellOW wORLD') FROM 테이블명;

 

⊙ LCASE, LOWER (소문자)

모든 문자를 소문자로 표현할 때 사용.

테이블에 없어도 사용 가능(단, 테이블에서 검색시에는 'FROM 테이블명'을 붙여야함)

SELECT LOWER('HeLLow woRLD'), LCASE('HellOW wORLD') FROM 테이블명;

 

⊙ SUBSTRING

문자열에서 해당 인덱스 부분을 잘라냄

substring(문자열, 시작인덱스, 자를문자의 개수) 로 사용하면됨.

SELECT SUBSTRING('Hellow World', 3, 3);

 

 

⊙ LPAD, RPAD

해당 부분까지를 원하는 문자로 채울 수 있음.

LPAD(문자열, 총문자열개수, 바꾸고자하는 문자); -> 왼쪽으로 채움

RPAD(문자열, 총문자열개수, 바꾸고자하는 문자); -> 오른쪽으로 채움

 

 

⊙ TRIM, LTRIM, RTRIM

TRIM : 모든 양쪽 공백을 제거함

LTRIM : 왼쪽 공백을 제거함

RTRIM : 오른쪽 공백을 제거함

공백 뿐만아니라 원하는 문자도제거가능

 

⊙ ABS(X)

X의 절대값을 구함.

 

⊙ MOD(n, m)

n을 m으로 나눈 나머지를 출력

 

⊙ FLOOR(X)

X보다 크지 않은 가장 큰 정수를 반환

 

⊙ CEILING(X)

X보다 작지 않은 가장 작은 정수를 반환

 

⊙ ROUND(X)

X에 가장 근접한 정수를 반환

 

⊙ POW(X, Y) POWER(X, Y)

X의 Y제곱 승을 반환

 

⊙ GREATEST(X, Y, ...)

가장 큰 값을 반환

 

⊙ LEAST(X, Y, ...)

가장 작은 값을 반환

 

⊙ CURDATE(), CURRENT_DATE

오늘 날짜를 YYYY-MM-DD 또는 YYYYMMDD 형식으로 반환

 

⊙ CURTIME(), CURRENT_TIME

현재 시각을 HH:MM:SS나 HHMMSS 형식으로 반환

 

⊙ NOW(), SYSDATE(), CURRENT_TIMESTAMP

오늘 현시각을 반환

 

⊙ PERIOD_DIFF(P1, P2)

P1 과 P2 의 차이 개월을 YYMM이나 YYYYMM 형식으로 반환함.

 

 

 

'Study > SQL' 카테고리의 다른 글

Insert, Update, Delete, Create, Add, Drop, Change, Rename 문  (0) 2021.05.12