gpt4 book ai didi

sql - PostgreSQL 列 'foo' 不存在

转载 作者:太空狗 更新时间:2023-10-30 01:38:07 24 4
gpt4 key购买 nike

我有一个包含 20 个整数列和 1 个名为“foo”的文本列的表

如果我运行查询:

SELECT * from table_name where foo is NULL

我得到错误:

ERROR:  column "foo" does not exist

我已经检查过他的专栏确实存在。如果我做类似的事情:

SELECT * from table_name where count is NULL

结果输出将“foo”显示为其中一列....我猜我必须在查询中做一些特殊的事情,因为 foo 是一个文本列......

感谢帮助(POSTGRESQL 8.3)

最佳答案

您不小心创建了带有尾随空格的列名,并且 phpPGadmin 可能创建了带有双引号的列名:

create table your_table (
"foo " -- ...
)

这会给你一个看起来到处都被称为 foo 的列,但你必须用双引号引起来并在你使用它时包含空格:

select ... from your_table where "foo " is not null

最佳做法是在 PostgreSQL 中使用小写的不带引号的列名。 phpPGadmin 中的某处应该有一个设置,告诉它不要引用标识符(例如表名和列名),但唉,我不使用 phpPGadmin,所以我不知道该设置在哪里(或者即使它存在)。

关于sql - PostgreSQL 列 'foo' 不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com