SQL 도전기 - 23

김치전사·2022년 7월 11일
0

SQL 도전기

목록 보기
23/36

오늘은 서브쿼리에 대해 공부한다

서브쿼리는 SELECT 명령에 의한 데이터 질의로, 상부가 아닌 하부의 부수적인 질의를 의미한다

서브쿼리
(SELECT 명령)

문법에는 간단하게 'SELECT 명령'이라고 적었지만 SELECT 구, FROM 구, WHERE 구 등 SELECT 명령의 각 구를 기술할 수 있다

최솟값을 삭제하려고 할 때 최솟값이 무엇인지 어떻게 알 수 있을까?

삭제는 어떻게 할까?

DELETE FROM sample54 WHERE a = (SELECT MIN(a) FROM sample54);
하지만 MySQL에서는 적용이 안된다

(SELECT MIN(a) FROM sample54)를 변수처리가 가능할까?

set @a = (SELECT MIN(a) FROM sample54);

서브쿼리 패턴

  1. 하나의 값을 반환하는 패턴
  2. 복수의 행이 반환되지만 열은 하나인 패턴
  3. 하나의 행이 반환되지만 열이 복수인 패턴
  4. 복수의 행, 복수의 열이 반환되는 패턴

SELECT 명령이 하나의 값만 반환하는 것을 '스칼라 값을 반환한다'고 한다!

UPDATE의 SET구에서도 서브쿼리를 사용할 수 있다

profile
개인공부 블로그입니다. 상업적 용도 X

0개의 댓글