【发布时间】:2016-01-27 08:26:07
【问题描述】:
我正在尝试检查是否存在 ID 的数据,但不存在对应的值,然后从输出中丢弃整行。如果 value 和 id 都为空,则可以,并且这些行保留在输出中
DECLARE @TAB TABLE
(
ID VARCHAR (50),
SKU VARCHAR (50),
Resistor_ID1 VARCHAR (50),
Resistor_Value VARCHAR (50),
Capacitor_ID VARCHAR (50),
Capacitor_Value VARCHAR (50),
Inductor_ID VARCHAR (50),
Inductor_Value VARCHAR (50)
)
INSERT @TAB
SELECT '1', 'BPN1256', '1033', '' , 'RMA56', 'Ceramic', 'PVAN59', 'Ferrite' UNION ALL
SELECT '1', 'SAN9286', '' , '' , 'TMA56', 'FILM' , '' , '' UNION ALL
SELECT '1', 'RJA1896', '3033', '35OHM', 'UMA56', 'Ceramic', 'PVAN59', 'Ferrite' UNION ALL
SELECT '1', 'DNN5256', '4033', '45OHM', 'QMA56', '' , 'PVAN59', 'Ferrite' UNION ALL
SELECT '1', 'LXA6556', '5033', '65OHM', 'ZMA56', 'FILM' , 'PVAN59', ''
预期输出
1 SAN9286 TMA56 薄膜 1 RJA1896 3033 35OHM UMA56 陶瓷 PVAN59 铁氧体请分享您的专业知识。 谢谢
【问题讨论】:
-
永远不要使用空字符串作为 NULL...
-
您使用的是哪个数据库系统?
-
调整你的例子,你需要那么多列吗?更好地描述为什么只返回那些行。
-
@jarlh:返回这些行是因为 ID 及其值已填充或两者均为空白我正在使用 sql2008
-
所有行的 id 值为 1... 都是什么?
标签: sql sql-server