SQL:NOT IN 没有 return 预期的行
SQL: NOT IN doesn't return expected rows
我有tableA
A
+--------+------+
| values | data |
+--------+------+
| 11 | 4 |
+--------+------+
| 22 | 5 |
+--------+------+
| 33 | qwe |
+--------+------+
| 44 | 7 |
+--------+------+
| 55 | zui |
+--------+------+
还有这个SQL
SELECT * FROM A WHERE data NOT IN (4,5,7)
所以预期的结果是
33
55
因为qwe
和zui
是NOT IN
(4,5,7)
.
但是结果是空的。未返回任何行。
我该如何解决?
因为数据是 varchar 列,所以将它们作为类似字符串引用
SELECT * FROM A WHERE data NOT IN ('4','5','7')
我有tableA
A
+--------+------+
| values | data |
+--------+------+
| 11 | 4 |
+--------+------+
| 22 | 5 |
+--------+------+
| 33 | qwe |
+--------+------+
| 44 | 7 |
+--------+------+
| 55 | zui |
+--------+------+
还有这个SQL
SELECT * FROM A WHERE data NOT IN (4,5,7)
所以预期的结果是
33
55
因为qwe
和zui
是NOT IN
(4,5,7)
.
但是结果是空的。未返回任何行。
我该如何解决?
因为数据是 varchar 列,所以将它们作为类似字符串引用
SELECT * FROM A WHERE data NOT IN ('4','5','7')