【问题标题】:AS statement ignoring cases in PSQL在 PSQL 中忽略大小写的 AS 语句
【发布时间】:2021-03-12 13:10:42
【问题描述】:

我们正在使用 Node Postgres 客户端在我们的数据库上运行一些查询,例如:

await client.query('SELECT A.date_time AS dateTime FROM A')

问题是该行的返回值如下:

Expected:{
  dateTime: '2009-06-16 11:00:00'
}

Received: {
  datetime: '2009-06-16 11:00:00'
}

这是一个错误还是我们在某处缺少配置?

【问题讨论】:

  • 列名不区分大小写,除非您引用它们。

标签: node.js postgresql pg-node


【解决方案1】:

SQL 区分大小写,但不是字符串文字或带引号的标识符的所有内容都大小写折叠。 SQL 标准规定大小写折叠为大写,而 PostgreSQL 折叠为小写。

如果您希望在 dateTime 这样的标识符中保留大小写,则必须用双引号将其括起来:"dateTime"

【讨论】:

    猜你喜欢
    • 2011-05-21
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多