为什么Sql条件(not in,not like,!=)在表的varchar值上不起作用

伊斯拉木丁

我有一个包含两列并包含两个记录的表。

SQL表结构:

CREATE TABLE #TEMP_TEST
(
    ID bigint NOT NULL,
    DESCRIPTION varchar(500) NULL
) ON [PRIMARY]

INSERT INTO #TEMP_TEST VALUES(1, 'obsolete')
INSERT INTO #TEMP_TEST VALUES(2, NULL)

SELECT * FROM #TEMP_TEST

#TEMP_TEST表中的虚拟记录总数

ID      | DESCRIPTION |
--------+-------------+
1       | obsolete    |
2       | NULL        |

查询这些条件=likein工作正常。

SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION ='obsolete'
SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION LIKE 'obsolete'
SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION IN ('obsolete')

这些结果正常工作:

ID      | DESCRIPTION |
--------+-------------+
1       | obsolete    |

问题

查询这些条件!=not likenot in不能正常工作。

SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION != 'obsolete'
SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION NOT LIKE 'obsolete'
SELECT * FROM #TEMP_TEST LC2 WHERE LC2.DESCRIPTION NOT IN ('obsolete')

结果:

ID      | DESCRIPTION |
--------+-------------+

预期成绩:

ID      | DESCRIPTION |
--------+-------------+
2       | NULL        |

我应该怎么做才能获得预期的结果?

如果需要进一步的条件以取得预期的结果,请检查并给出所需的答案或评论。

斯坦尼斯瓦夫·卡拉什尼科夫

您可以使用OR,如果它会甚至工作ANSI_NULLSON

SELECT * FROM #TEMP_TEST LC2 WHERE  LC2.DESCRIPTION != 'obsolete' OR LC2.DESCRIPTION IS NULL
SELECT * FROM #TEMP_TEST LC2 WHERE  LC2.DESCRIPTION NOT LIKE 'obsolete' OR LC2.DESCRIPTION IS NULL
SELECT * FROM #TEMP_TEST LC2 WHERE  LC2.DESCRIPTION NOT IN ('obsolete') OR LC2.DESCRIPTION IS NULL

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL LIKE语句不起作用

来自分类Dev

SQL 中的 LIKE 不起作用

来自分类Dev

条件在MySQL Union 2表上不起作用

来自分类Dev

LIKE查询SQL在带空格的串联值中不起作用

来自分类Dev

为什么SERIAL在Postgres的这个简单表上不起作用?

来自分类Dev

为什么SlideUp效果在具有表行显示的div上不起作用

来自分类Dev

为什么在清除conntrack表的情况下“ echo f”在debian上不起作用?

来自分类Dev

将varchar转换为十进制在SQL Server上不起作用

来自分类Dev

为什么评估条件不起作用

来自分类Dev

Linq WHERE EF.Functions.Like-为什么直接属性起作用而反射不起作用?

来自分类Dev

为什么CGContextSetRGBStrokeColor在ios7上不起作用?

来自分类Dev

为什么Fade过渡在共享元素上不起作用

来自分类Dev

为什么getExternalFilesDirs()在某些设备上不起作用?

来自分类Dev

为什么刷新在System.err上不起作用?

来自分类Dev

为什么ngRepeat在此json对象上不起作用

来自分类Dev

为什么getDrawable()在某些Android设备上不起作用?

来自分类Dev

为什么ddply在此数据帧上不起作用?

来自分类Dev

为什么Https在EC2上不起作用?

来自分类Dev

为什么jQuery中的scrollTop在Firefox上不起作用?

来自分类Dev

为什么减少在Struct上不起作用?

来自分类Dev

为什么tel:*链接在ios上不起作用?

来自分类Dev

为什么addEventListener在数据列表上不起作用?

来自分类Dev

为什么ScrollTop位置在移动Safari上不起作用?

来自分类Dev

为什么“加载事件在addEventListener()上不起作用”?

来自分类Dev

为什么`fprintf / sprintf`在`keypressfcn`上不起作用?

来自分类Dev

为什么分配在此DataFrame上不起作用

来自分类Dev

为什么FieldDoesNotExist在POST.get()上不起作用?

来自分类Dev

为什么此switch语句在Angular上不起作用?

来自分类Dev

为什么模糊和聚焦在Safari上不起作用?

Related 相关文章

  1. 1

    SQL LIKE语句不起作用

  2. 2

    SQL 中的 LIKE 不起作用

  3. 3

    条件在MySQL Union 2表上不起作用

  4. 4

    LIKE查询SQL在带空格的串联值中不起作用

  5. 5

    为什么SERIAL在Postgres的这个简单表上不起作用?

  6. 6

    为什么SlideUp效果在具有表行显示的div上不起作用

  7. 7

    为什么在清除conntrack表的情况下“ echo f”在debian上不起作用?

  8. 8

    将varchar转换为十进制在SQL Server上不起作用

  9. 9

    为什么评估条件不起作用

  10. 10

    Linq WHERE EF.Functions.Like-为什么直接属性起作用而反射不起作用?

  11. 11

    为什么CGContextSetRGBStrokeColor在ios7上不起作用?

  12. 12

    为什么Fade过渡在共享元素上不起作用

  13. 13

    为什么getExternalFilesDirs()在某些设备上不起作用?

  14. 14

    为什么刷新在System.err上不起作用?

  15. 15

    为什么ngRepeat在此json对象上不起作用

  16. 16

    为什么getDrawable()在某些Android设备上不起作用?

  17. 17

    为什么ddply在此数据帧上不起作用?

  18. 18

    为什么Https在EC2上不起作用?

  19. 19

    为什么jQuery中的scrollTop在Firefox上不起作用?

  20. 20

    为什么减少在Struct上不起作用?

  21. 21

    为什么tel:*链接在ios上不起作用?

  22. 22

    为什么addEventListener在数据列表上不起作用?

  23. 23

    为什么ScrollTop位置在移动Safari上不起作用?

  24. 24

    为什么“加载事件在addEventListener()上不起作用”?

  25. 25

    为什么`fprintf / sprintf`在`keypressfcn`上不起作用?

  26. 26

    为什么分配在此DataFrame上不起作用

  27. 27

    为什么FieldDoesNotExist在POST.get()上不起作用?

  28. 28

    为什么此switch语句在Angular上不起作用?

  29. 29

    为什么模糊和聚焦在Safari上不起作用?

热门标签

归档