티스토리 뷰

DEVELOPE/MYSQL&MARIADB

SQL SELECT 조회, 정렬

소찾나 2017. 10. 16. 21:59
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

SQL  SELECT 조회, 정렬

SQL SELECT 조회, 정렬

SQL SELECT 조회, 정렬




1 select 명령문

   select 명령문의 2개 이상의 절로 구성되어 있다.
  
   ▶ select 명령문읜 select 와 from 이라는 절을 가지고 있고 그리고 where, group by, order by 같은 절을 선택적으로 상용한다.

   ▶ 절의 순서는 고정되어 있고 예를들면 GROUP BY 절은 WHERE 또는 FROM 절 앞에 올 수 없다. 그리고 ORDER BY 절이 사용된다면 항상
       마지막에 사용된다.

   ▶ HAVING 절은 GROUP BY 절이 사용되어야만 사용할 수 있다.


   SELECT 문의 예제

학생과 점수테이블의 모든 학생 리스트를 출력한다.

SQL SELECT 조회, 정렬




mysql> select * from student;
+----+------+-----------+-------+--------+
| no | sno  | name      | jumsu | course |
+----+------+-----------+-------+--------+
|  1 |  100 | 홍길동    |   100 | 수학       |
|  2 |  101 | 김철수    |    90 | 국어        |
|  3 |  102 | 김순이    |    30 | 영어        |
|  4 |  103 | 김말동    |    45 | 국어        |
|  5 |  104 | 정민철    |    80 | 역사        |
|  6 |  105 | 이만수    |    70 | 과학        |
|  7 |  106 | 안철수    |    90 | 영어        |
|  8 |  107 | 김재동    |   100 | 역사        |
|  9 |  108 | 이미자    |    95 | 수학        |
+----+------+-----------+-------+--------+
9 rows in set (0.00 sec)




학생과 점수 테이블에서 90점 이상의 점수를 맞은 학생리스트를 출력하라


mysql> select * from student where jumsu >= 90;
+----+------+-----------+-------+--------+
| no | sno  | name      | jumsu | course |
+----+------+-----------+-------+--------+
|  1 |  100 | 홍길동    |   100 | 수학       |
|  2 |  101 | 김철수    |    90 | 국어        |
|  7 |  106 | 안철수    |    90 | 영어        |
|  8 |  107 | 김재동    |   100 | 역사        |
|  9 |  108 | 이미자    |    95 | 수학        |
+----+------+-----------+-------+--------+
5 rows in set (0.00 sec)


학생과 점수 테이블에서 80점 이상의 점수를 맞은 학생의 성적 역순으로 출력하라


mysql> select * from student where jumsu >= 80 order by name asc;
+----+------+-----------+-------+--------+
| no | sno  | name      | jumsu | course |
+----+------+-----------+-------+--------+
|  8 |  107 | 김재동    |   100 | 역사   |
|  2 |  101 | 김철수    |    90 | 국어   |
|  7 |  106 | 안철수    |    90 | 영어   |
|  9 |  108 | 이미자    |    95 | 수학   |
|  5 |  104 | 정민철    |    80 | 역사   |
|  1 |  100 | 홍길동    |   100 | 수학   |
+----+------+-----------+-------+--------+
6 rows in set (0.00 sec)



학생과 점수 테이블에서 80점 이상의 점수를 맞은 학생의 이름을 순차적으로 출력하라

mysql> select * from student where jumsu >= 80 order by jumsu desc;
+----+------+-----------+-------+--------+
| no | sno  | name      | jumsu | course |
+----+------+-----------+-------+--------+
|  1 |  100 | 홍길동    |   100 | 수학   |
|  8 |  107 | 김재동    |   100 | 역사   |
|  9 |  108 | 이미자    |    95 | 수학   |
|  2 |  101 | 김철수    |    90 | 국어   |
|  7 |  106 | 안철수    |    90 | 영어   |
|  5 |  104 | 정민철    |    80 | 역사   |
+----+------+-----------+-------+--------+
6 rows in set (0.00 sec)


   



'DEVELOPE > MYSQL&MARIADB' 카테고리의 다른 글

SQL 명령어 ORDER BY 정렬  (0) 2017.10.17
SQL GROUP BY / HAVING  (0) 2017.10.17
mysql 날짜 및 시간처리  (0) 2017.10.16
mysql 명령어 정리 [쿼리 검색, 삭제, 수정]  (0) 2017.10.14
mysql 명령어 정리 [기본1]  (0) 2017.10.14
댓글