본문 바로가기
mySql

[mysql] ORDER BY / Comparison Operators

by ram_ 2022. 12. 4.

Step 01.  INSERT INTO -- VALUES

create table celab
    -> (
    ->     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)
    -> );

celab table을 create해준다.

  SEX는 한글자만 들어갈거라 char(1)로 적어줬다. varchar는 문자열을 뜻한다. 

  NULL은 허용여부, key값 데이터를 구분하는 unique한 구분자,

  DEFAULT '' 은 디폴트값을 공백으로 설정하면서 name값을 입력하지 않으면 공백으로 들어가는 것,

  auto_increment는 해당 value를 입력할 때 ID를 적어주지 않는다면 자동으로 1씩 증가시키는 것을 뜻한다.

 

문법에 맞는 소문자, 대문자를 사용하였다.

처음에 에러가 발생했는데, BIRTHDAY 컬럼에 날짜를 적어주는데 따옴표 없이 작성하였었다.

날짜 또한 숫자라고 생각하여 없이 작성해줬는데 ''안에 value를 넣어줘야 한다.

 

INSERT INTO celab VALUES(5, '유재석', '1972-08-14', 50, 'M', 'Mc, 개그맨', '안테나');

INSERT INTO를 사용하여 celab table에 values를 할당하였다.

 

 

 


Step 02. ORDER BY

select age, name from celab order by age ASC;

age를 내림차순 기준으로 age, name 출력한다.

 

select age, name
-> from celab
-> order by age, name;

order by 뒤 여러가지 조건을 넣을 수도 있다. 기본으로 내림차순이며 name과 같은 문자열일때는 가나다순, abc순으로 정렬된다.

 

SELECT age, name
-> FROM celab
-> ORDER BY age DESC, name ASC;

문법에 맞춰 대소문자를 구분해줬다.

하나의 컬럼은 오름차순, 하나는 내림차순으로 각각 설정이 가능하다.

 


Step 02. Comparison Operators

 

select --- from celab where age=20 order by name;

where 뒤 여러가지 복합 연산자를 사용하여 조건을 부여할 수 있다.

  •  != 
  •  >
  •  <
  •  >= 
  •  <=
  •  <>  : 크거나 작은(같지 않은)