작업 순서
USE 문 : 가장 먼저 사용할 데이터베이스를 지정한다.
USE 데이터베이스_이름;
SELECT select_expr
[FROM table_references]
[WHERE where_condition]
[GROUP BY {col_name | expr position}]
[HAVING where_condition]
[ORDER BY {col_name expr position}]
[LIMIT {[offset,] row_count row_count OFFSET offset}]
SELECT 열 이름
FROM 테이블 이름
WHERE 조건식
GROUP BY 열 이름
HAVING 조건식
ORDER BY 열_이름
LIMIT 숫자
가장 기본적인 구성
SELECT 열 이름
FROM 테이블 이름
WHERE 조건식
USE market_db;
SELECT * FROM member;
아래처럼 사용하는 것도 가능하다.
SELECT * FROM market_db.member;
멤버 테이블에서 이름 속성만 분리해 가져오는 방법.
SELECT mem_name FROM member;
별칭을 지정하는 방법 접근할 속성 옆에 적어서 지정. (만약에 공백이 존재한다면 "" 로 묶어줘야 한다.)
SELECT addr 주소, debut_date "데뷔 일자",
mem_name FROM member;
WHERE : 특정한 조건을 추가
- 문법 순서 : SELECT ~ FROM ~ WHERE
SELECT 열 이름 FROM 테이블 이름 WHERE 조건식;
IN() : 해당 데이터가 포함되어 있는지를 조건으로 사용할 때 쓰임.
LIKE : 문자열의 일부 글자로 검색할 때 사용.
- % : 전체를 의미
- _ : __는 두글자 _는 한글자인데 그게 무엇이든 상관없다는 것을 뜻한다.
서브 쿼리
SELECT height FROM member WHERE mem_name = '에이핑크';
SELECT mem_name, height FROM member WHERE height > 164;
-- 아래로 변경하는게 가능하다.
SELECT mem_name, height FROM member
WHERE height > (SELECT height FROM member WHERE mem_name = '에이핑크');
장점 : 2개의 SQL을 하나로 만들어 관리하는데 편하다.
ORDER BY : 오름차순 내림차순을 결정한다.
SELECT 열이름
FROM 테이블 이름
WHERE 조건식
GROUP BY 열_이름
HAVING 조건식
ORDER BY 열 이름
LIMIT 숫자
데이터값이 높은것부터 시작하도록 하려면 DESC;를 붙여준다. (기본값은 ASC)
LIMIT : 출력 개수를 제한
DISTINCT : 중복을 제거
- 사용방법 : SELECT DISTINCT addr FROM member;
HAVING은 집계 함수와 관련된 조건을 제한하며, GROUP BY 다음에 사용 (WHERE 을 사용했을 때 오류가 난다면 사용해보자.)
'DB' 카테고리의 다른 글
| JOIN (0) | 2025.12.10 |
|---|---|
| 수정 명령어 INSERT, UPDATE, DELETE (0) | 2025.12.10 |
| 데이터 베이스 구조 (0) | 2025.12.10 |
| 쿼리문 명령어 (0) | 2025.12.09 |
| MySQL 설치방법 (0) | 2025.12.09 |