我有这个查询
SELECT
MUESTRAS, POZOS, PRIORITY, NAME, VALUE
FROM
(SELECT
MUESTRAS, POZOS, PROJECTCODE, SAMPLETYPE,
PRIORITY, CAST(VAR1 AS NVARCHAR(MAX)) AS VAR1, NUM1, NUM2
FROM
WS_LEYES_PTXT_PILAS_CALCULADAS) p
UNPIVOT
(VALUE FOR NAME IN
(VAR1,-- Varchar maybe Null
NUM1,-- Float
NUM2)-- Float
) AS unpvt;
我尝试转换所有变量,但我有相同的错误
谢谢!和奖励
答案 0 :(得分:2)
您需要将所有三列转换为相同的类型:
SELECT MUESTRAS, POZOS, PRIORITY, NAME, VALUE
FROM (SELECT MUESTRAS, POZOS, PRIORITY,
CAST(VAR1 AS NVARCHAR(MAX)) AS VAR1,
CAST(NUM1 AS NVARCHAR(MAX)) as NUM1,
CAST(NUM2 AS NVARCHAR(MAX)) as NUM2
FROM WS_LEYES_PTXT_PILAS_CALCULADAS
) p
UNPIVOT
(VALUE FOR NAME IN
(VAR1,-- Varchar maybe Null
NUM1,-- Float
NUM2)-- Float
) AS unpvt;
您可能希望使用str()
之类的内容来更好地控制格式。