sql - PSQL - 双精度类型的无效输入语法:“null”;
问题描述
我正在编写一个查询来提取一些数据并遇到这种类型双精度的无效输入语法:“null”错误,我不完全确定它背后的含义和/或没有找到解决方案。我正在运行案例语句的列中确实包含空值,或者它具有我需要的适当值。
帐户 id col 可以有字符串或者它有空值
我试过了:
case
when length(account_id) > 1
then account_id
else
'null'
end as account_id,
和
case
when account_id is not null
then account_id
else
'null'
end as account_id,
两者都导致无效操作:双精度类型的无效输入语法:“null”;
当我把它放在一个列中并使用长度(account_id)时,它会显示长度或只显示 null - 为什么这在 case 语句中不起作用?
谢谢!
解决方案
'null'
是一个字符串。 null
是 。. . 好吧null
。你的account_id
似乎是 type double precision
。这是一个奇怪的选择account_id
,但不合适的数据类型是不相关的。相关的是该case
表达式希望所有内容都属于同一类型,并且数字优先。
您可能需要以下两件事之一:
(case when length(account_id) > 1 then account_id end) as account_id,
默认null
是没有else
. 您可以添加else null
,但这是多余的。
或者:
(case when length(account_id) > 1 then account_id::varchar(255) else 'null' end) as account_id,
推荐阅读
- php - 每次插入 (int)$_GET['id']; 时我都会得到 0 值 在数据库中
- apache - 使用 htaccess 访问具有不同名称的相同文件
- java - 列表视图不显示来自自定义数组适配器的项目
- r - 在 R 中,如何使用不同的标签设置和保留自定义级别?
- makefile - 使用 Lua 脚本运行 HAProxy
- docker - docker 图像未显示在控制台中,但显示在 docker hub 中(允许某人许可)
- python - 将 ELMO 与 Keras 一起使用?
- android - 根据房间选择活动
- google-apps-script - 将 html 转换为 Google 文档
- reactjs - react-snap 没有这样的文件或目录