1. 실습환경 만들기
Order by 연산자 및 비교 연산자, 논리 연산자에 관한 예제를 만들기 위해 아래 table을 만들어준다.
table의 속성값에 관해 설명하자면,
Field는 항목, Type은 데이터타입, Null은 null값을 허용할 것인지에 관한 여부, Key는 이 table에서 데이터를 구분하는 unique한 값인지를 나타내는 여부이고 Primary key라고 표현한다. Default는 default값을 무엇으로 할 것인지, Extra에는 현재 값을 입력하지 않아도 자동으로 1씩 증가하는 auto_increment가 적혀있다.
CREATE TABLE celeb
(
ID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
NAME varchar(32) NOT NULL DEFAULT '',
BIRTHDAY date,
AGE int,
SEX char(1),
JOB_TITLE varchar(32),
AGENCY varchar(32)
);
데이터는 아래 데이터를 넣어준다.
2. Order by
Order by는 SELECT문에서 데이터를 특정 컬럼을 기준으로 오름차순 혹은 내림차순 정렬을 해주는 명령어다.
ASC(Ascending): 오름차순으로 정렬
DESC(Descending): 내림차순으로 정렬
SELECT column1, column2, ...
FROM tablename
ORDER BY column1, column2, ... ASC|DESC;
where 조건문과 같이 쓸 때엔 order by가 where 뒤에 온다.
예제를 들어보면, celeb 테이블에서 이름과 나이를 나이순으로 조회해보겠다.
SELECT age, name
FROM celeb
ORDER BY age ASC;
Order by의 기준에 컬럼이 두 개 들어갈 수도 있다. 이 경우 28살이 두명인데 이름 순으로 정렬하므로 송강 다음 이미주가 오게 된다. 또한, ACS를 생략해도 기본은 오름차순 정렬이다.
SELECT age, name
FROM celeb
ORDER BY age, name;
물론, column마다 정렬 순서를 다르게 할 수도 있다.
ex) ORDER BY age DESC, name ASC;
3. Comparison Operators (비교 연산자)
비교 연산자에는 다음과 같은 연산자들이 있다.
예제를 살펴보자. 나이가 29세가 아닌 데이터를 검색하려면, 아래 코드를 입력하면 된다.
SELECT name, age FROM celeb WHERE age!=29 ORDER BY age;
'코딩 > SQL' 카테고리의 다른 글
[SQL] UNION (0) | 2023.02.20 |
---|---|
[SQL] 논리 연산자 (0) | 2023.02.20 |
[SQL] 데이터 조작 언어 (select, insert, where, update, delete) (0) | 2023.02.16 |
[SQL] Table 생성/변경/삭제 (0) | 2023.02.16 |
[SQL] Database 정의 / User 관리 (0) | 2023.02.15 |