C: create를 뜻하며 생성한다는 의미를 가진다. 주로 insert문이 이에 해당한다.
R: read를 뜻하며 어떤 데이터를 읽는다는 의미를 가지며, Select문이 이에 해당한다.
U: update를 뜻하며 말 그대로 수정을 뜻하고, Update문이 이에 해당한다.
D: delete를 뜻하며 삭제를 의미하고, Delete문이 이에 해당한다.
INSERT INTO 테이블(컬럼명) VALUES (값들)
INSERT INTO user(name, age, married, comment) VALUES ('david', 27, 0, '자기소개1');
SELECT 컬럼 FROM 테이블명
SELECT * FROM user;
SELECT name, married FROM user;
SELECT name as userName FROM user; //as는 생략가능 가독성을 위해 써줄 때가 있음
SELECT * FROM user WHERE 조건
SELECT name, age FROM user WHERE married = 1 AND age > 30;
SELECT id, name FROM user WHERE married = 0 OR age > 30;
SELECT * FROM user WHERE age BETWEEN 28 AND 30;
SELECT * FROM user WHERE id in (1,2,3);
=== SELECT * FROM user WHERE id = 1 or id = 2 or id = 3;
SELECT * FROM user WHERE name like %david%;
문자열을 포함하는 양쪽으로 어떤 문자가 와도 상관없이 조회 가능
ilike의 경우는 모든 문자를 소문자로 변경해서 검색한다. like는 대소문자를 구분하는 반면
ilike는 모든문자를 소문자로 변환해서 검색하기 때문에 대소문자를 구분하지 않는다.
SELECT * FROM user WHERE name is not null;
name
컬럼이 null값이 아닌 로우만 조회하겠다는 의미이다.
is not null 대신 is null 을 사용하면 name
컬럼이 null인 데이터만 조회가 가능하다.
order by로 특정 컬럼값 순서대로 정렬 가능
desc 는 내림차순, asc 는 오름차순
SELECT id, name FROM user ORDER BY age DESC;
LIMIT으로 조회할 개수 제한
SELECT id, name FROM user ORDER BY age DESC LIMIT 1;
OFFSET으로 앞의 로우들 스킵 가능 (OFFSET 2면 세 번째 것부터 찾음)
SELECT id, name FROM user ORDER BY age DESC LIMIT 1 OFFSET 1;
필드이름 | 타입
id | int(11) auto_increment not null
name | varchar(10)
email | varchar(30)
INSERT into 테이블명 values()
INSERT into 테이블명 values('','정현우','aaa@gmail.com');
INSERT into 테이블명 id, name values('','정현우');
alter table test rename test1;
rename table test to test1;
-> test란 테이블 이름을 test1으로 바꾼다
alter table test add content text
-> content 란 필드를 추가
alter table test drop content
-> content 필드를 삭제
alter table test change name myname
-> name 필드를 myname으로 수정
alter table test modify name varchar(30)
-> name 필드를 타입을 varchar(30)으로 바꿈
UPDATE 테이블명 SET 컬럼 = 새값 WHERE 조건
UPDATE user SET comment = '안녕하세요 데이빗입니다' WHERE id = 1
DELETE FROM 테이블명 WHERE 조건
DELETE FROM user WHERE id = 2;