SQL과 RDB란 무엇인가?
데이터베이스
관계형 데이터베이스(RDBMS)
- 표 형태(MySQL, Oracle, PostgreSQL 등)
- 주로 정형 데이터
- 트랜잭션 처리 -> 일관성과 무결성 필요한 서비스에서 사용(트랜잭션의 ACID 특성)
- 고정된 스키마 -> 데이터 구조 변경 어려움 -> 수평 확장 어려움
- SQL을 통해 데이터 수집, 관리
비-관계형 데이터베이스(NoSQL)
- Key-value Store, Column-family, Document, Graph 등의 형태(MongoDB, cassandra 등)
- 비정형/반정형 데이터(JSON, XML 등)
- ACID 특성 보장하지 않는 경우도 있음, 중복
- 유연한 스키마 -> 데이터 구조 변경 용이 -> 수평 확장 용이
SQL(Structured Query Language)
- Table, Column, Row
sqlfiddle 사이트에서 실습하기
팁
- 필요한 행과 열만 가져오는 것이 좋음
- WHERE 바로 옆에 1=1과 같은 무조건 참인 논리 연산자 추가해서 조건 수정할 때 간단하게 주석처리만 하면 되게끔 하면 좋음
- 예시
SELECT *
FROM PRODUCT
WHERE 1=1
-- AND category = '주방용품'
AND price > 1000- 1 as new_col 이런 식으로 새로운 컬럼 만들어낼 수도 있음
- CONCAT(name, '의 가격은', price, '원 입니다.') 이런 식으로 자료형 상관없이 이을 수 있음
- COALESCE(purchase_date, 'Unknown') : 널값 채우기
- CREATE TABLE IF NOT EXISTS : 테이블이 없으면 생성.
'데브코스 > TIL' 카테고리의 다른 글
| 2023-12-06 데브코스 3주차 - 3 TIL (0) | 2023.12.07 |
|---|---|
| 2023-12-05 데브코스 3주차 - 2 TIL (1) | 2023.12.05 |
| 2023-11-29 데브코스 2주차 - 3 TIL (0) | 2023.11.29 |
| 2023-11-27 데브코스 2주차 - 1 TIL (0) | 2023.11.27 |
| 2023-11-24 데이터 활용 시 고려할 점 (0) | 2023.11.24 |