오늘은 sql에 대하여 배웠다. 작년에 정보처리기사를 따겠다고 이 부분을 열심히 공부했던 기억이 난다, 그래서 그런지 어렵지 않게 무난하게 끝낸것 같다.
특히 직접 인스타그램을 이용하여 스키마를 만들어 보는 시간은 유익하면서도 좋은 공부가 됐다.
오랜만에 몸무게를 재보고 깜짝 놀랐다 살이 많이 빠졌다 ㅠㅠ 아무래도 혼자 살면서 집에서 부트캠프만 듣고 있으니 끼니도 제대로 챙겨먹지도 못해서 그런가 보다 지금 부터라도 잘 챙겨 먹어야겠다.. 건강이 최고인데..
SQL (Structured Query Language)
데이터베이스 생성
CREATE DATABASE 데이터베이스;
데이터베이스 사용
USE 데이터베이스;
테이블 생성
CREATE TABLE user (
...
);
테이블 정보 확인
DESCRIBE user;
데이터 검색
SELECT 특성
결과를 도출해낼 데이터베이스 테이블을 명시
SELECT 특성
FROM 테이블이름
필터 역할
SELECT 특성
FROM 테이블이름
WHERE 특성 = "특정 값"
정렬 (ASC 오름차순 DESC 내림차순)
SELECT *
FROM 테이블이름
ORDER BY 특성
결과로 출력할 데이터의 갯수 정하기
SELECT *
FROM 테이블이름
LIMIT 100
유니크한 값을 받기
SELECT DISTINCT 특성
FROM 테이블이름
둘 이상의 테이블을 서로 공통된 부분을 기준으로 연결
SELECT *
FROM 테이블_1
JOIN 테이블_2 ON 테이블_1.특성_A = 테이블_2.특성_B
데이터 베이스 트랜잭션은 ACID특성을 갖고 있다.
데이터가 고정되어 있지 않은 데이터베이스 ex ) 몽고DB, Casandra
데이터베이스 설계
1:1 관계 - 하나의 레코드가 다른 테이블의 레코드 한 개와 연결된 경우
1:N 관계 - 하나의 레코드가 서로 다른 여러 개의 레코드와 연결된 경우
N:N 관계 - 여러 개의 레코드가 다른 테이블의 여러 개의 레코드와 관계가 있는 경우 이러한 관계는 조인테이블을 만들어 주어야 한다.
자기참조 관계(Self Referencing Relationship) - 추천인과 같은 관계