[MySQL]SELECT문 개념 및 예제
SELECT 란
- 명령어 종류에는 DDL, DCL, DML 등이 있다. SELECT문은 DML에 속합니다.
- 튜플(행)을 조회합니다.
SELECT 기본 문법
SELECT [DISTINCT] 속성명 FROM 테이블명
WHERE 조건식
GROUP BY 그룹화할 속성명
HAVING 조건식
ORDER BY 정렬할속성명 [ASC|DESC]
- DISTINCT : 중복된 속성을 한 번만 조회
- WHERE : 조건 ex) age가 15살 이하 검색 => where age >=15
- GROUP BY : 그룹화할 속성명
- HAVING : GROUP BY와 같이 쓰이는 조건식
- ORDER BY : 데이터 정렬, ASC는 오름차순, DESC는 내림차순, DEFAULT는 ASC
Person 테이블
ID | NAME | AGE |
1 | hoestory | 24 |
2 | jeong | 5 |
3 | kim | 30 |
4 | lee | 18 |
5 | kim | 19 |
SELECT * FROM Person
- 속성명 넣는 곳에 *을 넣게 되면 모든 데이터를 조회합니다.
결과
SELECT NAME,AGE FROM Person
- 속성명 NAME, AGE를 넣게 되면 NAME값과 AGE값만 조회합니다.
결과
SELECT DISTINCT NAME FROM Person
- 속성명 앞에 DISTINCT를 넣으면 그 속성은 중복을 없애고 조회합니다.
SELECT NAME FROM Person WHERE AGE < 20
- 조건식의 값이 TRUE인 값들만 조회합니다.
SELECT * FROM PERSON GROUP BY AGE HAVING AGE < 20
- AGE로 그룹화하고 HAVING에 있는 조건식에 TRUE인 값 조회합니다.
SELECT * FROM Person ORDER BY AGE
- AGE 기준으로 오름차순으로 정렬합니다.
SELECT * FROM Person ORDER BY AGE DESC
- AGE 기준으로 내림차순으로 정렬합니다.
'DB' 카테고리의 다른 글
[MySQL] Explain으로 성능 개선 포인트 찾기 (2) | 2024.11.17 |
---|---|
[MySQL] 데드락 및 데이터베이스 Lock(Shared Lock, Exclusive Lock, Record Lock)에 대하여 -1 (2) | 2024.10.20 |
[MySQL] 트랜잭션 격리 수준 (0) | 2024.10.06 |
[MySQL] 인덱스 적용안되고 풀스캔이 적용되는 패턴 (1) | 2024.06.30 |
[MySQL] Explain 사용법 및 분석 (0) | 2023.06.16 |
댓글
이 글 공유하기
다른 글
-
[MySQL] 데드락 및 데이터베이스 Lock(Shared Lock, Exclusive Lock, Record Lock)에 대하여 -1
[MySQL] 데드락 및 데이터베이스 Lock(Shared Lock, Exclusive Lock, Record Lock)에 대하여 -1
2024.10.20 -
[MySQL] 트랜잭션 격리 수준
[MySQL] 트랜잭션 격리 수준
2024.10.06 -
[MySQL] 인덱스 적용안되고 풀스캔이 적용되는 패턴
[MySQL] 인덱스 적용안되고 풀스캔이 적용되는 패턴
2024.06.30 -
[MySQL] Explain 사용법 및 분석
[MySQL] Explain 사용법 및 분석
2023.06.16