쿼리(Query)란?
쿼리는 데이터베이스에 데이터를 저장하거나 검색, 수정, 삭제 등의 작업을 요청하기 위해 사용하는 명령문입니다.
대부분의 데이터베이스는 SQL(Structured Query Language)이라는 표준 언어를 사용합니다.
기본적인 SQL 명령
1. SELECT (데이터 조회)
데이터베이스에서 특정 데이터를 조회할 때 사용합니다.
SELECT column1, column2 FROM table_name WHERE 조건;
- SELECT: 가져올 컬럼을 지정
- FROM: 데이터를 조회할 테이블을 지정
- WHERE: 조건을 지정 (옵션)
- DISTINCT: 중복된 데이터를 제거하여 고유한 값을 반환할 때 사용됩니다.
- ALIAS: 컬럼 이름에 별칭을 부여하여 결과에서 이해하기 쉽게 표시할 때 사용됩니다.
예제
SELECT name, age FROM users WHERE age > 18;
- users 테이블에서 name과 age 컬럼을 가져옴.
- age가 18보다 큰 데이터만 조회.
SELECT DISTINCT column1 AS alias1, column2 AS alias2
FROM table_name
WHERE 조건;
- DISTINCT: column1과 column2에서 중복 값을 제거합니다.
- AS alias1과 AS alias2: column1과 column2에 각각 alias1과 alias2라는 별칭을 부여하여 결과에서 다른 이름으로 표시합니다.
SELECT DISTINCT first_name AS name, last_name AS surname
FROM employees
WHERE department = 'Sales';
- 이 쿼리는 employees 테이블에서 Sales 부서에 속한 직원들의 고유한 first_name과 last_name을 name과 surname이라는 별칭으로 가져옵니다.
2. INSERT (데이터 삽입)
테이블에 새 데이터를 삽입할 때 사용합니다.
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
예제
INSERT INTO users (name, age) VALUES ('John', 25);
- users 테이블에 name이 'John', age가 25인 데이터를 추가.
3. UPDATE (데이터 수정)
테이블의 기존 데이터를 수정할 때 사용합니다.
UPDATE table_name SET column1 = value1, column2 = value2 WHERE 조건;
예제
UPDATE users SET age = 26 WHERE name = 'John';
- users 테이블에서 name이 'John'인 데이터의 age를 26으로 변경.
4. DELETE (데이터 삭제)
테이블에서 데이터를 삭제할 때 사용합니다.
DELETE FROM table_name WHERE 조건;
예제
DELETE FROM users WHERE age < 18;
- users 테이블에서 age가 18보다 작은 데이터를 삭제.
추가 기능
1. 정렬 (ORDER BY)
데이터를 특정 컬럼 기준으로 정렬합니다.
SELECT column1, column2 FROM table_name ORDER BY column1 ASC; -- 오름차순
예제
SELECT name, age FROM users ORDER BY age DESC;
- age 기준으로 내림차순 정렬.
2. 그룹화 (GROUP BY)
데이터를 그룹으로 묶어 집계(합계, 평균 등)할 때 사용합니다.
SELECT column, COUNT(*) FROM table_name GROUP BY column;
예제
SELECT age, COUNT(*) FROM users GROUP BY age;
- age별로 사용자 수를 집계.
3. 조인 (JOIN)
여러 테이블의 데이터를 연결해 조회할 때 사용합니다.
SELECT t1.column1, t2.column2 FROM table1 t1 JOIN table2 t2 ON t1.common_column = t2.common_column;
예제
SELECT users.name, orders.product FROM users JOIN orders ON users.id = orders.user_id;
- users 테이블과 orders 테이블을 id와 user_id 기준으로 연결하여 조회.
요약
- SELECT: 데이터 조회
- INSERT: 데이터 삽입
- UPDATE: 데이터 수정
- DELETE: 데이터 삭제
- WHERE: 조건 지정
- ORDER BY: 정렬
- GROUP BY: 그룹화
- JOIN: 테이블 연결
심화는 다음 블로그 글에 작성 예정.
'멋쟁이사자처럼_부트캠프 > DB' 카테고리의 다른 글
[멋쟁이사자처럼 부트캠프 TIL 회고] 백엔드 부트캠프 13기: Java 12일차 DB(MySQL Workbench) (0) | 2024.12.17 |
---|---|
[멋쟁이사자처럼 부트캠프 TIL 회고] 백엔드 부트캠프 13기: Java 11일차 DB, MySQL (1) | 2024.12.16 |