1
全く同じクエリです。 SSMSの17.1バージョンで動作しますが、動作しません。17.3SSMS 17.3で文法エラーが発生し、SSMSでエラーが発生しません。17.1
IF OBJECT_ID('tempdb..#Orders','U') IS NOT NULL
DROP TABLE #Orders
-- DDL and sample data for UNPIVOT Example 1
CREATE TABLE #Orders
(
Orderid INT IDENTITY,
GiftCard INT,
TShirt INT,
Shipping INT
)
INSERT INTO #Orders
SELECT 1, NULL, 3
UNION ALL
SELECT 2, 5, 4
UNION ALL
SELECT 1, 3, 10
SELECT * FROM #Orders
SELECT
OrderID, ProductName, ProductQty
FROM
#Orders
CROSS APPLY
(VALUES ('GiftCard', GiftCard), ('TShirt', TShirt),
('Shipping', Shipping)) x (ProductName, ProductQty)
WHERE
ProductQty IS NOT NULL
DROP TABLE #Orders
これは17.1では問題ありません。 16、列:14:同じクエリが17.3上で実行されている場合は、次のエラーが行で
パースエラーが返されるの近くに不適切な構文「(」
を異なるだけで他は17.3バージョンですSSMSのアズールでVM上にある。
そうでなければ、彼らはまったく同じです。私はその理由を研究していたとき、私はそうではありません接続の問題、100%の結果を取得しています
。
SSMSのバージョンは無関係です。接続しているSQL Serverのバージョンは重要です –
SQL Serverの各バージョンで 'select @@ version'を実行し、ここに投稿してください。 – wBob
クエリが動作するバージョンは、「Microsoft SQL Server 2012(SP3)(KB3072779) - 11.0.6020.0(X64)」10月20日2015 15:36:27 Windows NT上のMicrosoft Corporation標準版(64ビット)クエリが動作しないバージョンは 'Microsoft SQL Azure(RTM) - 12.0.2000.8 Nov 29 2017 09:37:51(Build 7601:Service Pack 1)' 6.1となりました。Copyright(C)2017 Microsoft Corporation ' –