SQL - 提示引用列

标签 sql postgresql

我是 SQL 的初学者,如果这个问题很原始,我很抱歉。
我刚开始学习 http://www.w3schools.com 的教程,所以下载了“Northwind”数据库来尝试处理它,并使用 pgAdmin 3 控制台访问数据库。 我只是尝试了简单的命令来选择表格的一列,但它给出了与任何表格中的任何列相同的以下消息

LINE 1: select City from Customers;
                        ^
HINT:  Perhaps you meant to reference the column "customers.City".

请问是不是我的命令有问题?以及如何解决?

谢谢

最佳答案

当您导入此“Northwind”数据库时,列名以 CamelCase 形式导入 - 您的导入必须向列标识符添加双引号以进行create table 查询。

这很不幸,因为这会导致您还必须在所有查询中引用它们,例如:

select "City" from customers;

为了保持理智,我建议你 rename all columns to lower case .这样你使用什么大小写都没有关系,因为 Postgres 会自动将所有未加引号的标识符转换为小写。然后任何一个都可以工作:

select city from customers;
select City from Customers;
SELECT CITY FROM CUSTOMERS;

关于SQL - 提示引用列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37910287/

相关文章:

sql - 为什么 SQL Server 2008 Management Studio 没有选项 "Open table"

node.js - nodejs、postgres 和 Bluebird

ruby-on-rails - RAILS SQL 子查询优化

开发中的 Rails 3 优化工具?

postgresql - 将 Shapefile 导入 Postgres

c# - SQLCE : Why I get "duplicate value" error? 字段是否启用身份?

php - 如何使用 Bootstrap 和 SQL 查询在循环中连续显示 4 列

SQL Server - 停止或中断 SQL 脚本的执行

SQL Server View |内联 View 扩展指南

java - 如何使jOOQ引用保留关键字的表名?