【发布时间】:2014-05-12 03:17:27
【问题描述】:
我发现 UNPIVOT 能够自动排除具有 NULL 值的字段。但是,CROSS APPLY-VALUES 方法无法做到这一点。有谁知道如何从 CROSS APPLY-VALUES 中自动排除 NULL 值字段?比方说,如果字段 Field3 和 Field4 包含 NULL 值,则排除它们。
SELECT
E.FieldA,
E.FieldB,
E.FieldC,
DBParam.Display,
DBParam.Value
INTO DBParam
FROM
Map_Data AS E
CROSS APPLY (VALUES (Field1, 'Field1'),
(Field2, 'Field2'),
(Field3, 'Field3'),
(Field4, 'Field4')
) AS DBParam(Value, Display)
【问题讨论】:
-
请注意标签是独立的。也就是说,您不能组合多个标签来创建一个概念。标签
[sql]和[server]一起与单个[sql-server]标签不同。 请务必阅读选择标签时出现的说明! -
对不起,我没有足够的声誉来交叉申请。
-
我不确定是什么让您认为您需要声誉才能使用该标签。 create 标签只需要一定级别的代表,cross-apply 存在。
-
谢谢。你有我的问题的答案吗?
标签: sql sql-server unpivot cross-apply