DB/명령프롬프트 - mysql

[MySQL] 정렬 (order by asc / desc)

congs 2023. 3. 27. 09:04

정렬

: 정렬은 항상 마지막에 위치해야함

  • 오름차순 1.2.3..   : asc
  • 내림차순 3.2.1   :  desc

 

이름 기준 오름차순 정렬하기

*select from student order by name asc; (asc생략가능,desc는 내림차순)

select * from student order by name where age≤23; (= error)

mysql> select *from student order by name asc;
+------+--------+------+---------+----------+-------+
| num  | name   | age  | address | major1   | score |
+------+--------+------+---------+----------+-------+
| 2222 | 강길순 |   24 | seoul   | English  |    87 |
| 6666 | 다래냥 |    1 | Inchen  | computer |   100 |
| 9999 | 다래뇽 |   22 | seoul   | computer |    70 |
| 7777 | 다래옹 |   23 | Inchen  | English  |    20 |
| 8888 | 다래잉 |   26 | Inchen  | computer |    99 |
| 5555 | 유관순 |   21 | suwon   | Computer |    97 |
| 3333 | 이순신 |   22 | Inchen  | English  |    57 |
| 1111 | 홍길동 |   23 | seoul   | computer |    89 |
+------+--------+------+---------+----------+-------+
8 rows in set (0.00 sec)

 

여러개의 정렬 기준 적용

- 각필드마다 asc와 desc 설정 필요! (생략시 asc)

< 여러개의 정렬 기준 적용 >
- 각필드마다 asc와 desc 설정 필요! (생략시 asc)

mysql> select * from student order by major asc, score desc;
+------+--------+------+---------+----------+-------+
| num  | name   | age  | address | major    | score |
+------+--------+------+---------+----------+-------+
| 6666 | 다래냥 |    1 | Inchen  | computer |   100 |
| 8888 | 다래잉 |   26 | Inchen  | computer |    99 |
| 5555 | 유관순 |   21 | suwon   | Computer |    97 |
| 1111 | 홍길동 |   23 | seoul   | computer |    89 |
| 9999 | 다래뇽 |   22 | seoul   | computer |    70 |
| 2222 | 강길순 |   24 | seoul   | English  |    87 |
| 3333 | 이순신 |   22 | Inchen  | English  |    57 |
| 7777 | 다래옹 |   23 | Inchen  | English  |    20 |
+------+--------+------+---------+----------+-------+
8 rows in set (0.00 sec)