Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 행(Row) 선택과 열(Column) 선택을 결합하는 방법

MySQL에서 행(Row) 선택과 열(Column) 선택을 결합하는 방법

MySQL에서 특정 행(Row)과 특정 열(Column)을 동시에 조회하려면 SELECT 문에 WHERE 절을 함께 사용하면 됩니다. 열 목록을 지정하면 원하는 열만 선택되고, WHERE 절의 조건을 통해 원하는 행만 필터링할 수 있습니다.

예제 테이블

다음과 같은 'Student' 테이블이 있다고 가정해 보겠습니다.

mysql> Select * from Student;
+--------+--------+--------+
| Name | RollNo | Grade |
+--------+--------+--------+
| Gaurav | 100 | B.tech |
| Aarav | 150 | M.SC |
| Aryan | 165 | M.tech |
+--------+--------+--------+
3 rows in set (0.00 sec)

WHERE 절로 행 선택과 열 선택 결합하기

아래 쿼리는 WHERE 절에 OR 연산자를 사용하여 학년(Grade)이 'M.Sc' 또는 'B.Tech'인 행만 선택하고, 동시에 Name, RollNo, Grade 세 개의 열만 조회하는 예입니다.

mysql> Select Name, RollNo, Grade from Student where Grade='M.Sc' or Grade='B.Tech';
+--------+--------+--------+
| Name | RollNo | Grade |
+--------+--------+--------+
| Gaurav | 100 | B.tech |
| Aarav | 150 | M.SC |
+--------+--------+--------+
2 rows in set (0.00 sec)

실행 결과를 보면 전체 3개의 행 중 조건에 맞는 2개의 행만 반환되었으며, 테이블의 모든 열이 아닌 지정한 3개의 열만 출력된 것을 확인할 수 있습니다. 이처럼 WHERE 절을 활용하면 행 필터링과 열 선택을 손쉽게 결합할 수 있습니다.

참고: IN 연산자로 더 간결하게 작성하기

여러 값을 OR 조건으로 비교할 때는 IN 연산자를 사용하면 쿼리를 더 간결하고 가독성 있게 작성할 수 있습니다.

mysql> Select Name, RollNo, Grade from Student where Grade IN ('M.Sc', 'B.Tech');

위 쿼리는 앞서 OR 연산자를 사용한 쿼리와 완전히 동일한 결과를 반환합니다. 조건이 많아질수록 IN 연산자를 사용하는 것이 유지보수 측면에서 유리합니다.