목록분류 전체보기 (618)
충분히 쌓여가는
인라인뷰(Inline View) FROM 문에 사용하는 서브 쿼리 결과는 조인할 수 있으므로 쿼리를 논리적으로 격리할 수 있다. FROM 문에 사용하는 서브 쿼리의 기본 형식SELECT [열 이름]FROM [테이블] AS aINNER JOIN (SELECT [열] FROM [테이블] WHERE [열] = [값]) AS b ON [a.열] = [b.열]WHERE [열] = [값]; 인라인뷰에 INNER JOIN을 활용한 서브 쿼리-- 테이블 조인SELECT a.symbol, a.company_name, a.ipo_year, a.sector, a.industry, b.date, b.[open], b.[high], b.[low], b.[close], b.adj_close, b.volumeFROM nasdaq_..
다중 행 서브 쿼리서브 쿼리에서 반환되는 결과가 2행 이상인 경우IN 문WHERE 절에 있는 IN 문의 소괄호가 서브 쿼리를 안고 있다. WHERE 문에 사용하는 다중 행 서브 쿼리의 기본 형식SELECt [열 이름]FROM [테이블]WHERE [열] IN (SELECT [열] FROM [테이블]) 단일 행 서브 쿼리와 다중 행 서브 쿼리 비교SELECT * FROM nasdaq_companyWHERE symbol IN ('MSFT', 'AMD', 'AMZN');SELECT * FROM nasdaq_companyWHERE symbol IN (SELECT symbol FROM nasdaq_company WHERE symbol IN ('MSFT', 'AMD', 'AMZN'));서브 쿼리에서 검색된 3개의 행..
단일 행 서브 쿼리서브 쿼리의 결과가 1행만 반환되는 쿼리 WHERE 문에 사용하는 단일 행 서브 쿼리의 기본 형식SELECT [열 이름]FROM [테이블]WHERE [열] = (SELECT [열] FROM [테이블]) WHERE 문에 사용한 서브 쿼리가 한 행을 반환해 최종으로 1건의 데이터만 검색하는 쿼리SELECT * FROM nasdaq_companyWHERE symbol = (SELECT symbol FROM nasdaq_company WHERE symbol IN ('MSFT'));만약 WHERE 문에 사용한 서브 쿼리가 다중 행을 반환하면 비교 연산자 규칙에 어긋나므로 오류가 발생한다. 단일 행 서브 쿼리: 비교 연산자 규칙에 어긋나 오류 발생SELECT * FROM nasdaq_company..
서브 쿼리(SubQuery)쿼리 안에 포함되는 또 다른 쿼리서브 쿼리는 조인하지 않은 상태에서 다른 테이블과 일치하는 행을 찾거나, 조인 결과를 다시 조인할 때 사용할 수 있다. 서브 쿼리의 특징반드시 소괄호로 감싸 사용한다.주 쿼리를 실행하기 전에 1번만 실행된다.비교 연산자에 서브 쿼리를 사용하는 경우 서브 쿼리를 오른쪽에 기술해야 한다.내부에는 정렬 구문인 ORDER BY 문을 사용할 수 있다. WHERE 문에 서브쿼리 사용서브 쿼리 중에서도 WHERE 문에 사용하는 서브 쿼리를 중첩 서브 쿼리(nested subquery)라고 부른다.중첩 서브 쿼리는 조건문의 일부로 사용한다 = 또 다른 SELECT 문을 사용한 결과를 주 쿼리의 조건값으로 사용한다. 서브 쿼리를 비교 연산자 =, , >=, 와 ..