programing

공통 테이블 식, 세미콜론이 필요한 이유는 무엇입니까?

jooyons 2023. 6. 29. 20:04
반응형

공통 테이블 식, 세미콜론이 필요한 이유는 무엇입니까?

보통은SQL ServerCommon Table Expression 절에는 다음과 같이 문 앞에 세미콜론이 있습니다.

;WITH OrderedOrders AS --semicolon here
(
    SELECT SalesOrderID, OrderDate,
    ROW_NUMBER() OVER (ORDER BY OrderDate) AS 'RowNumber'
    FROM Sales.SalesOrderHeader 
) 
SELECT * 
FROM OrderedOrders 
WHERE RowNumber BETWEEN 50 AND 60

왜요?

  • WITH는 다른 곳에서 사용될 수 있으므로 모호성을 피하기 위해
    ..FROM..WITH (NOLOCK)..
    RESTORE..WITH MOVE..
  • 다음으로 문을 종료하는 것은 선택 사항입니다.;SQL 서버에서

종합하면, WITH/CTE 전에 이전 문을 종료해야 합니다.오류를 방지하기 위해 대부분의 일반적인 사용;WITH왜냐하면 우리는 CTE 이전에 무엇이 있는지 모르기 때문입니다.

그렇게

DECLARE @foo int;

WITH OrderedOrders AS
(
    SELECT SalesOrderID, OrderDate,
...;

와 동일합니다.

DECLARE @foo int

;WITH OrderedOrders AS
(
    SELECT SalesOrderID, OrderDate,
...;

MERGE 명령에도 유사한 요구 사항이 있습니다.

언급URL : https://stackoverflow.com/questions/6938060/common-table-expression-why-semicolon

반응형