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에 문제를 실행하지 않습니다.
유일한 다른 다른이 17.3 버전 근처의 구문이 잘못되었습니다 '(': 16, 열 : 14 같은 쿼리는 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 Standard Edition (64 비트) 6.1 (빌드 7601 : 서비스 팩 1)'및 쿼리가 작동하지 않는 버전은'Microsoft SQL Azure (RTM) - 12.0.2000.8 Nov 29 2017 09:37:51 Copyright (C) 2017 Microsoft Corporation ' –