본문 바로가기
Database/MySQL

ORDER BY

by 서초록 2021. 5. 13.

SELECT  *

FROM CUSTOMERS

WHERE 

ORDER BY CUSTOMERID ASC/DESC

    ASC기본으로 정렬

 

ORDER BY 명령 자체는 데이터베이스에 저장된 순서 자체를 변경하진않음, 저장된 데이터 자체를 변경하는게아님

저장되어있는 데이터는 순서대로 쌓여있는거고 SELECT문을 수행해서 데이터를 보여줄때만 순서를 변경해서 보여줌

 

pirce기준으로 내림차순으로 정렬

select *

from products

order by price desc

limit 1 -- 결과를 1개로 제한

 

문제

Q1. employee names

select name

from employee

order by name asc

 

Q2. employee salaries

select name

from employee

where months < 10

and salary > 2000

order by eomployee_id

 

Q3. higher than 75 marks

75점 초과 학생들 조회, 마지막 세글자 기준으로 정렬, 마지막 세글자가 같다고 하면 두 번째 정렬 기준은 아이디 기준으로 정렬

select name

from students

where marks > 75

order by right(name, 3), id --마지막 세글자가 정렬기준, 단 robby, bobby같은 경우는 id를 기준으로 정렬

 

길이를 입력하지않으면 끝까지 가져감

substr = substring 동일함

 

Q5.weather obseravation 15

소수점 다섯쨰자리가 0이니 반올림해서 5.5569

 

답 :

select round(long_w, 4)  -- 4자리까지만 남기고 반올림

from station --테이블명

where lat_n < 137.2345 -- less than 137.2345

order by lat_n desc --내림차림정렬 --largest tat_n을 가진 데이터를 뽑기위해

limit 1 -- 가장 큰 값 하나만 -- 내림차순 정렬 중 맨 위에 걸 가져오면 largest lat_n

 

 

 

'Database > MySQL' 카테고리의 다른 글

SELECT  (0) 2021.05.13
UNION, UNION ALL  (0) 2021.05.09
JOIN  (0) 2021.05.09
CASE문  (0) 2021.05.09
GROUP BY, HAVING절  (0) 2021.04.28