먹었으면 뇌를 쓰자

MySQL ② INSERT/SELECT 본문

SQL

MySQL ② INSERT/SELECT

뇌이비 2022. 10. 20. 21:24

INSERT 

테이블에 레코드를 삽입하는 문법이다.

 

INSERT INTO table_name
(column1, column2, column3 ...)
VALUES
('value1','value2','value3'...);

참조1 - 만약 모든 컬럼에 데이터를 넣는다면 (column1, column2, column3 ...) 는 안 적어도 된다

 

INSERT INTO members
(name,description,submit)
VALUES
('brain','very important',now());

참조1 - auto로 자동화된 column은 안 적어도 된다 (여기서는 id)
참조2 - 시간과 날짜 데이터 타입은 now()를 쓰면 현재 시간과 날짜가 나오게 된다

 

 

 

SELECT

테이블의 레코드를 읽어내는 문법이다.

 

모든 데이터를 읽고 싶을 때
SELECT * FROM table_name;

특정 컬럼의 데이터를 읽고 싶을 때
SELECT column1, column2 ... FROM table_name;

 

특정 컬럼에서 중복을 뺀 순수한 데이터만 읽고 싶을 때 
SELECT DISTINCT column1, column2 ... FROM table_name;

특정 컬럼에서 중복을 뺀 순수한 데이터의 개수를 알고 싶을 때
SELECT COUNT(DISTINCT column1) FROM table_name;

 

SELECT  조건문

특정한 조건에 따라 데이터를 읽을 수도 있다.

 

참조1 - WHERE
조건을 만족하는 데이터만 필터링한다 

SELECT column1, column2 ... FROM table_name WHERE condition;

예시1) name이 'brain'인 데이터만 필터링하고 싶다
SELECT * FROM members WHERE name = 'brain';

예시2) id가 3 이상의 데이터의 name,description 컬럼을 필터링하고 싶다
SELECT name,description FROM members WHERE id >= 3;

 

참조2 - ORDER BY
기준에 따라 정렬해서 읽어낸다

SELECT column1, column2 ... FROM table_name ORDER BY column1, column2 ... ASC/DESC;

예시) name은 오름차순, submit은 내림차순으로 정렬해서 읽고 싶다
SELECT * FROM members ORDER BY name ASC, submit DESC;

 

참조3 - LIMIT
읽을 수 있는 양의 최댓값을 설정해서 읽어낸다

SELECT * FROM table_name LIMIT number;

예시) 100개의 레코드만 읽고 싶다
SELECT * FROM members LIMIT 100;

 

 

 

 

<참고자료>

MySQL INSERT INTO https://www.w3schools.com/mysql/mysql_insert.asp

MySQL SELECT https://www.w3schools.com/mysql/mysql_select.asp

MySQL WHERE https://www.w3schools.com/mysql/mysql_where.asp

MySQL ORDER BY https://www.w3schools.com/mysql/mysql_orderby.asp

MySQL LIMIT https://www.w3schools.com/mysql/mysql_limit.asp

Comments