오늘 배운 것
이번주부터 만들고 있는 mbti앱 실습에 mysql 적용하기 위한 sql 문법과 mysql 학습
배운 것 정리
1. 관계형DB, Relational DBMS(RDBMS)
장점
- 구조화가 명확하게 되어 있어서 예외가 없음
- 데이터 입출력 속도가 매우 빠름
- 신뢰성이 매우 높음
단점
- DB의 구조 변경이 매우 어려움 -> 빅데이터 등에는 사용이 어려움(새로운 키가 추가 되면 전체 스키마 변경이 필요)
2. SQL
1) SELECT: DB에서 원하는 데이터 가져오기
1-1 갖춰진 DB에서 데이터를 뽑아 올 때 사용하는 구문
예시) SELECT * FROM Customer;
1-2 원하는 컬럼의 값만 가지고 올 때
SELECT 컬럼명 FROM table
SELECT City, Country FROM Customers
1-3 DB에는 영향 없이 원하는 데이터를 추가 할 때
필요한 값을 임의로 추가해서 가져오고 싶을 때
SELECT 컬럼명, 원하는 데이터 FROM table
• SELECT City, 1, ‘원하는 문자열‘, NULL FROM Customers
1-4 원하는 조건을 충족하는 Row 만 가져 올 때
원하는 조건을 충족 하는 값을 찾고 싶을 땐? WHERE
SELECT * FROM table WHERE 조건
SELECT * FROM OrderDetails WHERE Quantity > 5;
1-5 Row 를 정렬해서 가져 올 때
선택한 값들을 정렬해서 가지고 올 때는? ORDER BY
SELECT * FROM Customers ORDER BY ContactName;
SELECT * FROM Customers ORDER BY ContactName DESC;
SELECT * FROM Customers ORDER BY CustomerName ASC, ContactName DESC;
1-6 Row 의 개수를 지정 하고 싶을 때
가지고 오는 ROW의 수를 지정하고 싶을 때? LIMIT
SELECT * FROM Customers LIMIT 10;
SELECT * FROM Customers LIMIT 30, 10;
원하는 Row 순번, 자르는 개수
Column 명을 변경해서 가지고 오고 싶을 때
Column 명을 변경해서 가지고 올 때? AS
SELECT CustomerId AS id, CustomerName AS name FROM Customers;
2) JOIN: 테이블 합치기
1-1 여러 테이블의 값을 하나로 합치고 싶을 때
여러 테이블을 하나로 붙이고 싶을 땐? JOIN
SELECT * FROM Products P JOIN Categories C ON P.CategoryID = P.CategoryID;
3. mysql
1) DB 생성
CREATE SCHEMA `mydb` DEFAULT CHARTER SET utf8mb4 COLLATE utf8mb4_general_ci;
2) TABLE 생성
CREATE TABLE visitor ( id INT PRIMARY KEY, counts INT );
3) DATA 삽입하기
• INSERT INTO visitor ( id, counts ) VALUES ( 1, 0 );
4) DATA 삭제
DELETE FROM visitor WHERE id = 2;
5) DATA 수정
UPDATE visitor SET counts = counts + 1 WHERE id = 1;
'코딩온(부트캠프 학원) - TIL' 카테고리의 다른 글
22.10.23- TIL (0) | 2022.10.24 |
---|---|
22.10.22- TIL (0) | 2022.10.22 |
22.09.26- TIL (0) | 2022.09.28 |
22.08.31- TIL (0) | 2022.08.31 |
22.08.29- TIL (0) | 2022.08.29 |