我正在尝试从psql命令行使用postgresql数据库中的原始SQL在数据表中选择单个列。我收到一条错误消息,指出该列不存在。然后它给了我一个提示,即可以使用在select语句中引用的确切列。这是查询:
SELECT insider_app_ownershipdocument.transactionDate FROM insider_app_ownershipdocument;
这是错误消息:
ERROR: column insider_app_ownershipdocument.transactiondate does not exist
SELECT insider_app_ownershipdocument.transactionDate FROM in...
HINT: Perhaps you meant to reference the column "insider_app_ownershipdocument.transactionDate".
我不知道为什么这不起作用。
答案 0 :(得分:3)
(Postgres)SQL尽管支持区分大小写的名称,但它会自动将名称转换为小写。所以
SELECT insider_app_ownershipdocument.transactionDate FROM insider_app_ownershipdocument;
将等同于:
SELECT insider_app_ownershipdocument.transactiondate FROM insider_app_ownershipdocument;
您应使用双引号保护列名,以避免这种影响:
SELECT insider_app_ownershipdocument."transactionDate" FROM insider_app_ownershipdocument;