postgresql - Postgres query is not null 似乎是在结果中返回空值
问题描述
下面是在 Postgres 中运行的 SQL 查询及其相应的输出。
“前提Id”列的数据类型是文本,相当于varchar(没有任何长度说明符)。所以我的查询是为什么结果在指定列中包含空值?
使用的 Postgres 版本是 10.11。
解决方案
SQL 中的单引号表示字符串文字。'premiseId'
不是列的名称,它是一个字符串文字。由于该文字不是null
,因此将返回表中的所有行。如果要在查询中使用该列,则应在不带引号的情况下引用它:
SELECT * FROM request WHERE premiseId IS NOT NULL
-- No quotes ---------------^-------^
推荐阅读
- javascript - 在上传之前预览许多图像
- sql - 将列分隔字段更改为在同一列 SQL 中输入
- excel - 使用 Google 表格编辑 XLSM 文件(不将文件转换为 GS)
- angular - Angular - 如果输入为空,则禁用按钮不起作用
- python - 删除标记值后 dtypes() 出现问题
- r - 连接字符向量元素,同时在元素之间添加“+”
- java - Hibernate 5.x 中的自定义标量值函数
- ruby-on-rails - 辅助方法未触发
- javascript - 如何在 Reactjs 材料 ui 中正确编写文本字段标签?
- windows - Windows 的 Docker 与 Windows Ubuntu 应用程序中的 Docker?