我有一个大的杂乱的报告来编写跨5个表的连接。一张表中有一列用于多个不同的值 - 本质上是一个“标签”列,其中标签以创造性的方式使用,取决于用户想要使用什么样的其他元数据。在SQL Server SELECT语句中使用CASE时消除NULL NULL
结果,我对报告查询返回3不同之处仅在“标签”一栏几乎相同的行;举例来说,我可能会得到:
NAME TAG EMAIL
BOB A [email protected]
BOB B [email protected]
BOB C [email protected]
我想要做的是分裂TAG列的内容要返回从查询3个独立的栏目,像这样的内容:
NAME A B C EMAIL
BOB A B C [email protected]
所以我尝试使用SQL SERVER CASE/WHEN功能来执行此操作;我在说,例如,当标签列的值是“A”时,将它返回到列“A”;如果是“B”,则放入“B”;等等。我认为这将返回上面的,而是它给了我这样的:
NAME A B C EMAIL
BOB A NULL NULL [email protected]
BOB NULL B NULL [email protected]
BOB NULL NULL C [email protected]
其中明确不太理想。
任何想法,堆栈溢出的天才?
我想我得到为什么这有助于,但你能解释一下吗?我为我明显的无知道歉。 – SuperNES 2010-09-17 13:22:10
编辑答案添加说明.. – 2010-09-17 15:53:48