
💃 개프로 불공단 체험단 : 영진닷컴 그림으로 배우는 데이터베이스 도서
SELECT * FROM 테이블명;
SELECT 뒤에 '*'(Asterisk, 그리스어로 별)을 지정한 경우 테이블의 모든 컬럼들의 값을 확인할 수 있다.
'*' 대신 컬럼 이름을 지정하면 지정한 컬럼 값만 볼 수 있다.
SELECT name FROM 테이블명; → 컬럼 name만 조회할 수 있다.
,로 구분하여 여러 개를 지정할 수 있다.WHERE을 사용하여 조건에 맞는 레코드로 범위를 좁힌다.= : 어떤 컬럼에 저장되어 있는 값이 지정한 조건 값에 일치하는 레코드만을 조회할 경우 사용한다.SELECT * FROM users WHERE age = 21;
→ age가 21에 해당하는 레코드를 조회
AND : 복수의 검색 조건을 지정
SELECT * FROM 테이블명 WHERE name = '홍길동' AND age = 21;
→ name이 홍길동이면서 age가 21에 해당하는 레코드를 조회
OR : 복수의 검색 조건 중 어느 한 쪽의 조건에 일치하는 데이터를 검색하는 경우
SELECT * FROM 테이블명 WHERE name = '이순신' OR name = '임꺽정';
!= : 저장되어 있는 값이 조건에 해당하는 값과 동일하지 않은 데이터를 검색할 수 있다. age != 21
→ age 컬럼 값이 21이 아닌 데이터를 검색
> : 저장되어 있는 값이 조건에 해당하는 값보다 큰 데이터를 검색>= : 지정한 값이 조건에 해당하는 값 이상이라는 조건 지정SELECT * FROM users(테이블명) WHERE age > 30;
→ age가 30보다 큰 레코드를 조회
→>=인 경우엔 30이상
(<, <= 도 미만, 이하)
BETWEEN을 사용하면 어떤 2개의 숫자 값 사이에 포함된 데이터를 검색할 수 있다.
SELECT * FROM users(테이블명) WHERE age BETWEEN 21 AND 25;
→ age 컬럼값이 21 이상 , 25 이하인 데이터를 검색
반대로 NOT BETWEEN : 포함된 값 사이에 해당되지 않는 데이터를 검색
IN : 지정한 값이 포함된 데이터를 검색SELECT * FROM users WHERE age IN (21, 30);
→ age가 21이나 30에 일치하는 레코드를 조회
NOT IN : age의 컬럼 값이 21이나 30에 해당 LIKE : 지정한 문자가 포함되어 있는 데이터를 검색
NOT LIKE : 지정한 문자가 포함되지 않은 데이터를 검색
% : 0문자 이상의 문자열을 의미
_ : 문자 1개를 의미함
SELECT * FROM users(테이블명) WHERE name LIKE '홍%';
→ name이 '홍'으로 시작하는 레코드를 조회
NULL로 표현된다. IS NULL : 컬럼값이 'NULL'인 데이터를 검색
> SELECT * FROM users WHERE age IS NULL;

ex) UPDATE 테이블명 SET name(컬럼명) = '스튜(바꿀값)' WHERE id=1;
-UPDATE : 테이블에 저장되어 있는 레코드를 갱신
-SET : 뒤에 갱신대상 컬럼과 변경 후의 값을 지정한다.
id=2, name='스튜' 등과 같이 콤마(,)로 구분하여 여러 개의 컬럼 이름과 값을 지정한다.ex) UPDATE users SET status = 1 WHERE age >= 40;
예를 들면 탈퇴한 사용자의 정보를 지우고 싶을 때나,
테이블에 저장되어 있는 레코드는 필요에 따라서 삭제할 수 있다.
DELETE FROM menus(테이블명) WHERE id=1(조건절);
menus 테이블에서 id 컬럼 값이 1과 일치하는 데이터를 삭제하는 예시.
DELETE FROM users(테이블명) WHERE age != 21;
→ age가 21이 아닌 레코드를 삭제
WHERE를 삭제해서 삭제 대상 조건을 지정하지 않고 실행하게 되면, 테이블의 모든 레코드가 삭제되니 유의해야 한다.SELECT 문장에서 삭제 대상 데이터를 가져오고,
DELETE문장으로 바꿔서 사용하면 부주의한 사고를 막을 수 있다.
ex) SELECT * FROM users(테이블명) ORDER BY age;
→ age가 작은 순으로 정렬
ORDER BY : 뒤에 컬럼 이름을 지정하면 해당 컬럼 이름 값의 오름차순(작은 순)으로 정렬할 수 있다.
ORDER BY DESC : 레코드를 지정한 컬럼 값의 내림(큰 순서)으로 정렬할 수 있다.
WHERE과 조합할 수도 있다.
ex) WHERE age >= 30 ORDER BY age
age 컬럼 값이 30 이상인 조건에 맞는 레코드만 오름차순으로 정렬하여 조회
지정한 조건에 일치하는 데이터를 대상으로하여 정렬된 상태로 조회