我正在尝试编写一个查询,该查询仅选择所有非空名称。以下两个查询均不返回结果:
SELECT name FROM MyTable WHERE name != '';
SELECT name FROM MyTable WHERE name = '';
Run Code Online (Sandbox Code Playgroud)
对于上下文,这两个查询都返回结果:
SELECT name FROM MyTable WHERE name != 'a';
SELECT name FROM MyTable WHERE name IS NOT NULL;
Run Code Online (Sandbox Code Playgroud)
我在某处读到空字符串等效于oracle中的NULL,但我仍然不明白为什么这解释了这种行为。我需要同时支持SQL Server和Oracle,这就是为什么我不能仅仅依靠的原因WHERE name IS NOT NULL
谁能解释这里发生了什么?谢谢!
| 归档时间: |
|
| 查看次数: |
7463 次 |
| 最近记录: |