この sql は有効です:
WITH A AS
(SELECT TOP 1000 *
FROM dbo.SomeTable)
SELECT * FROM A
これはエラーを出しますが(キーワード「DECLARE」の近くの構文が正しくありません):
WITH A AS
(SELECT TOP 1000 *
FROM dbo.SomeTable)
DECLARE @dt DATETIME
SET @dt = GETDATE()
SELECT * FROM A
PRINT DATEDIFF(SS,GETDATE(),@dt)
なんで?