1. 데이터베이스 목록 조회
\l
- 모든 데이터베이스 목록을 확인합니다.
2. 데이터베이스 전환
\c <database_name>
- 다른 데이터베이스로 전환합니다.
3. 테이블 목록 조회
\dt
- 현재 데이터베이스의 모든 테이블 목록을 확인합니다.
4. 특정 테이블의 컬럼 정보 조회
\d <table_name>
\d users
- 해당 테이블의 컬럼명, 타입, 제약조건 등을 확인할 수 있습니다.
5. 전체 데이터 조회 (SELECT)
SELECT * FROM <table_name>;
SELECT * FROM users;
- users 테이블의 모든 데이터를 가져옵니다.
6. 특정 컬럼만 조회
SELECT 컬럼1, 컬럼2 FROM 테이블이름;
SELECT id, name FROM users;
- users 테이블에서 id와 name 컬럼만 조회합니다.
7. 조건을 추가한 조회 (WHERE)
SELECT * FROM 테이블이름 WHERE 조건;
SELECT * FROM users WHERE age > 30;
- 나이가 30보다 큰 사용자만 조회합니다.
8. 정렬하여 조회 (ORDER BY)
SELECT * FROM 테이블이름 ORDER BY 컬럼명 [ASC|DESC];
SELECT * FROM users ORDER BY age DESC;
- 나이를 기준으로 내림차순(DESC) 정렬합니다.
- 기본값은 오름차순(ASC)입니다.
9. 조회 개수 제한 (LIMIT)
SELECT * FROM 테이블이름 LIMIT 숫자;
SELECT * FROM users LIMIT 5;
- 상위 5개의 데이터만 가져옵니다.
10. 특정 위치부터 조회 (OFFSET)
SELECT * FROM 테이블이름 LIMIT 숫자 OFFSET 시작위치;
SELECT * FROM users LIMIT 5 OFFSET 10;
- 11번째 데이터부터 5개를 가져옵니다.
11. 중복 제거하여 조회 (DISTINCT)
SELECT DISTINCT 컬럼명 FROM 테이블이름;
SELECT DISTINCT city FROM users;
- users 테이블에서 중복되지 않는 city 값만 조회합니다.
12. 그룹별 집계 조회 (GROUP BY, HAVING)
SELECT 컬럼명, COUNT(*) FROM 테이블이름 GROUP BY 컬럼명;
SELECT city, COUNT(*) FROM users GROUP BY city;
- 도시별 사용자 수를 구합니다.
HAVING을 추가하여 조건을 걸 수도 있습니다.
SELECT city, COUNT(*) FROM users GROUP BY city HAVING COUNT(*) > 5;
- 사용자 수가 5명 이상인 도시만 조회합니다.
13. 두 테이블 조인하여 조회 (JOIN)
SELECT A.컬럼명, B.컬럼명 FROM 테이블A AS A JOIN 테이블B AS B ON A.공통컬럼 = B.공통컬럼;
SELECT users.name, orders.amount FROM users JOIN orders ON users.id = orders.user_id;
- users 테이블과 orders 테이블을 user_id로 연결하여 조회합니다.