Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 하위 쿼리를 사용하여 데이터를 어떻게 필터링할 수 있습니까?


IN 키워드의 도움으로 하위 쿼리를 사용하여 데이터를 필터링할 수 있습니다. IN 연산자와 함께 값 목록을 사용하여 다른 쿼리의 결과를 기반으로 쿼리를 필터링하는 것처럼 쿼리 결과를 사용할 수 있기 때문입니다. 하위 쿼리는 IN 키워드 뒤의 괄호 안에 나타납니다.

예시

이 예를 설명하기 위해 다음 표의 데이터를 사용하고 있습니다. -

mysql> 고객에서 * 선택;+-------------+---------+| 고객 ID | 이름 |+-------------+----------+| 1 | 라훌 || 2 | 야쉬팔 || 3 | 가우라프 || 4 | Virender |+-------------+----------+4행 세트(0.00초)mysql> 예약에서 * 선택;+------ +-------------+------------+| 아이디 | 고객 아이디 | 일 |+--------+-------------+------------+| 1 | 1 | 2017-12-30 || 2 | 2 | 2017-12-28 || 3 | 2 | 2017-12-29 || 4 | 1 | 2017-12-25 || 5 | 3 | 2017-12-26 |+------+-------------+------------+5행 세트(0.00초) 

아래 쿼리는 하위 쿼리와 함께 'IN' 연산자를 사용하고 하위 쿼리에서 반환된 모든 값을 비교한 후 결과를 반환합니다.

mysql> SELECT * from 고객 WHERE customer_id IN (예약에서 customer_id 선택);+-------------+----------+| 고객 ID | 이름 |+-------------+----------+| 1 | 라훌 || 2 | 야쉬팔 || 3 | Gaurav |+-------------+----------+3행 세트(0.00초)