SELECT 추출할 컬럼 이름
FROM 테이블 이름
WHERE 조건 식
GROUP BY 컬럼 이름 (그룹화할)
HAVING 조건식
ORDER BY 컬럼 이름 (정렬)
LIMIT 숫자
-- SELECT '컬럼명' FROM '테이블명'
SELECT MEMBER_ID,MEMBER_NAME
FROM MEMBER_INFO;
-- * 를 사용하면 테이블 내 모든 컬럼을 조회한다
SELECT * FROM MEMBER_INFO;
-- MEMBER INFO 테이블에서 특정 조건을 지정하여 조회하기
SELECT *
FROM MEMBER_INFO
WHERE MEMBER_ID = 1;
🟧 AND 와 OR
SELECT TRUE OR FALSE AND FALSE ; //1
SELECT (TRUE OR FALSE) AND FALSE ; //0
🟧 BETWEEN - 범위 표현식
-- MEMBER_ID 가 0이상 7 이하인 데이터 조회
SELECT *
FROM MEMBER_INFO
WHERE MEMBER_ID BETWEEN 0 AND 7;
SELECT *
FROM MEMBER_INFO
WHERE CREATION_DATE BETWEEN '2022-10-01' AND '2022-10-30'
🟧 IN () - 여러 개의 값을 매칭시키기
SELECT *
FROM MEMBER_INFO
WHERE MEMBER_NAME IN('체다','이체다','조체다','바보')
SELECT *
FROM MEMBER_INFO
WHERE MEMBER_NAME = '체다' AND MEMBER_NAME = '이체다' AND MEMBER_NAME = '조체다' AND MEMBER_NAME = '바보';
🟧 LIKE - 문자열의 일부 글자 검색
-- content 컬럼 값들 중에 '체'로 시작하는 두 글자 데이터 조회
SELECT *
FROM MEMBER
WHERE CONTENT LIKE '체_';
-- content 컬럼 값들 중에서 '체'로 시작하는 모든 데이터 조회
SELECT *
FROM MEMBER
WHERE CONTENT LIKE '체%';
-- content 컬럼 값들 중에서 '체'가 들어가는 모든 데이터 조회
SELECT *
FROM MEMBER
WHERE CONTENT LIKE '%체%';
🟧 서브 쿼리로도 사용 가능
SELECT MEMBER_NAME, CONTENT,MEMBER_ID,CREATION_DATE
FROM MEMBER
WHERE CREATION_DATE <
(SELECT CREATION_DATE FROM MEMBER WHERE MEMBER_ID LIKE '이체다바보');
SELECT *
FROM MEMBER
ORDER BY CREATION DATE ASC;
-- member 테이블에서 member name 이 이체다바보임 데이터를 조회하여
-- creation date 순으로 내림차순으로 정렬하고 동일한 값이라면 member id 기준 오름차순 정렬
SELECT *
FROM MEMBER
WHERE MEMBER_NAME LIKE '이체다바보'
ORDER BY CREATION_DATE DESC, MEMBER_ID;
SELECT *
FROM MEMBER
LIMIT 3 -- 제일 위에 3건만 조회
SELECT *
FROM MEMBER
LIMIT 3,2; -- 3번째 데이터부터 2건만 조회
LIMIT 2 OFFSET 3; -- 위와 동일
SELECT *
FROM MEMBER
ORDER BY CREATION_DATE -- creation date로 정렬한 후 제일 위에 1건만 조회
LIMIT 1;
--
SELECT DISTINCT MEMBER_ID
FROM MEMBER
SELECT MEMBER_ID, COUNT(*) AS REVIEW_CNT
FROM MEMBER
GROUP BY MEMBER_ID'
🟧 집계 함수
SUM() | 총 합계 |
---|---|
AVG() | 평균 |
MIN() | 최소값 |
MAX() | 최대값 |
COUNT() | 행의 개수 |
COUNT(DISTINCT) | 행의 개수 |
🟧 COUNT
-- member id 를 기준으로 그룹화
-- 그룹화된 데이터에서 리뷰 개수가 100 이상인 그룹만 남김
-- 조건에 걸러진 그룹에서 리뷰 개수를 조회
SELECT COUNT(REVIEW_CONTENT) AS CNT_REVIEW
FROM MEMBER
GROUP BY MEMBER_ID
HAVING COUNT(REVIEW_CONTENT)>100;
참고