[1. 오늘 배운 것]
1. 데이터 유형
- Boolean : true or false
- Character : char, varchar, text
- Numeric : integer, floating-point number
- Temporal: date, time, timestamp, interval
- UUID : Universally Unique Identifiers
- Array : 숫자나 문자열 등을 저장
- JSON
2. 기본키 및 외래키
- 기본키(pk) : 모든 칸이 구별 가능하고 null값을 허용하지 않음
- 외래키(fk) : 다른 표와 얼마나 많은 관계를 맺고 있는지에 따라 다양한 키를 가지고 있을지 결정됨
- 외래키를 포함하고 있는 표를 차일드 표라고 부름
3. 제약조건
- 표에 있는 데이터의 열에 적용되는 규칙
- 표에 있는 모든 것에 제약을 걸 수 있은
- 유효하지 않은 데이터 방지
- 열에 거는 제약조건
- NOT NULL 제약조건 : null값을 허용하지 않음
- UNIQUE 제약조건 : 모두가 고유한 값을 가져야 함
- CHECK 제약조건 : 모든 행의 값이 특정한 조건을 만족하도록 함
- EXCLUSION 제약조건 : 특정 오퍼레이터를 사용한 특정 열이나 식에서 어던 두 열이 비교될 때 모든 비교값이 참으로 판명되지 않아야 함
- 테이블에 거는 제약조건
- CHECK 제약조건 : 데이터를 삽입하거나 업데이트할 때의 제약조건
- REFERENCES : 열이 다른 표에 존재해야함
- UNIQUE : 어느 열이 다중열에서 독특한 값을 갖게됨
- PK : 기본키 설정
4. 테이블 생성하기
- 기본 구조
- 예시
5. INSERT
- 예시
- 결과
- 예시
-결과
- 예시
- 결과
- 예시
- 결과
6. UPDATE
- 기본 구조
- 예시
- 결과
- 예시
- 결과
- RETURNING 컬럼을 UPDATE구문 마지막에 입력하면 SELECT 호출 없이도 변화된 결과값을 볼 수 있다
7. DELETE
- 기본 구조
- 예시
- 결과
8. ALTER table
- 기본 구조
- 예시
9. DROP table
- 기본 구조
- 예시
- 결과
10. CASE
- 특정 조건이 충족되었을 때 시퀄 코드를 실행하기 위해 CASE를 사용
- IF/ELSE문과 비슷
- 기본 구조
- 연습문제 : 영화 테이블에서 등급 당 다양한 영화의 수 출력
- 답
11. COALESCE
- 무한한 수의 argument를 쓸 수 있는 기능,
- NULL이 아닌 첫 argument 도출
- 치환할 때 사용할 수 있는 기능
12. CAST
- 데이터의 유형을 바꿔주는 함수
- '5'를 5로 바꾸는 경우,,
- 예시 : SELECT CAST(col AS VARCHAR) FROM table
13. NULLIF
- 괄호 안에 두 개의 값을 넣어서, 두 값이 같으면 NULL을, 아니면 첫 번째 값을 반환
14. VIEWS
- 프로그램에서 시각화한 표
- 간단한 명령으로 빠르게 쿼리를 보여줌
- JOIN을 매번 하지 않고 view로 변환시킬 수 있음
15. python으로 postgre 동작하기
- import psycopg2 as pg
- conn = pg2.connect(database='database_name', user='postgres', password=secret)
- cur = conn.cursor()
- cur.execute('SELECT * FROM table')
- cur.fetchone or cur.fetchmany(n) or fetchall()
- data = cur.fetchmany(n)
- data[i][j] (i행의 j열 반환)
- conn.close()
[2. 오늘 잘한 점]
데이터베이스는 이해도가 어느정도 높아서 강의를 빠르게 듣고 개인 공부 시간을 가졌다. 앞으로도 개인 공부 시간을 많이 가졌으면 좋겠다.
[3. 개선해야할 점]
팀스터디 과제 중 하나가 면접질문 준비해오기였는데, 면접질문이라 당연히 1분 안에 설명하려고 짧게 준비를 해갔다. 다른 팀원들은 옵시디언에 꽉채워서 설명해주셔서 너무 민망했다 ㅋㅋ ㅋㅋ ㅋ ㅋ 좀 더 성실히 임해야겠다,,^^
'부트캠프' 카테고리의 다른 글
[TIL] 유데미X사람인 취업 부트캠프 17일차 / (1) | 2024.01.08 |
---|---|
[TIL] 유데미X사람인 취업 부트캠프 16일차 / JShell, 자바 기초 (1) | 2024.01.05 |
[TIL] 유데미X사람인 취업 부트캠프 14일차 / SQL Group By~ Join (2) | 2024.01.03 |
[TIL] 유데미X사람인 취업 부트캠프 13일차 / SQL 쿼리문 SELECT~GROUP BY (1) | 2024.01.02 |
[TIL] 유데미X사람인 취업 부트캠프 12일차 / react-상태 (1) | 2023.12.29 |