SQL 기초

SQL 기초 (EXISTS)

class="song" 2023. 12. 4.
728x90

이번엔 쿼리문에서 where절에 사용하는 exists()를 정리해 보겠다.

SELECT mem_id, mem_name
FROM `member` 
WHERE EXISTS (SELECT *
              FROM cart 
              WHERE cart_member = mem_id);

기본적인 형태는 위의 형태로 사용한다.

 

exists함수는 조건에서 뒤에 나오는 데이터중 조회결과가 1건이라도 있으면 True, 없으면 False로 나타난다.

서브쿼리를 적용(다중컬럼의 다중행 모두 가능)

 

조회뿐만 아니라 수정(update), 삭제(delete)에서도 사용이 가능하다.

 

UPDATE member 
	SET mem_mileage = 2147483647
WHERE EXISTS (SELECT cart_member
			FROM cart ,prod 
			WHERE mem_id = cart_member
			AND cart_prod = prod_id
		    AND cart_prod = prod_id
		    AND cart_no LIKE '2005%'
		    HAVING SUM(cart_qty * prod_sale) >= 30000000
		    );

수정 시에는 위와 같은 형태로 사용할 수 있다.

 

이처럼 조건에 exists함수를 사용하여 편하게 조회, 수정, 삭제가 가능하다.

 

exists앞에 not을 붙여 부정으로도 사용할 수 있다.

728x90

'SQL 기초' 카테고리의 다른 글

SQL 기초(사용자 정의함수)  (1) 2023.12.05
SQL 기초(union)  (1) 2023.12.04
SQL 기초(4) 함수들  (0) 2023.11.28
SQL 기초(3) Join  (1) 2023.11.28
SQL 기초(2) - select (subquery)  (2) 2023.11.28

댓글