Postgres 中的这种“文字”语法是啥?

Posted

技术标签:

【中文标题】Postgres 中的这种“文字”语法是啥?【英文标题】:What is this type 'literal' syntax in Postgres?Postgres 中的这种“文字”语法是什么? 【发布时间】:2015-06-21 18:20:31 【问题描述】:

Postgres docs 说演员应该看起来像...

expression::typename
typename(expression)
cast(expression as typename)

但这有效:

select date '2015-06-20';

那是什么语法?它记录在哪里?

【问题讨论】:

这是一种(AFAIK SQL 标准)指定任意文字数据类型的方法。例如。 INTEGER '42'. 【参考方案1】:

它是类型常量 - 参见 http://www.postgresql.org/docs/9.4/static/sql-syntax-lexical.html 部分 4.1.2.7。其他类型的常量

可以使用以下任何一种表示法输入任意类型的常量:

输入“字符串” '字符串'::类型 CAST(“字符串”AS 类型)

【讨论】:

以上是关于Postgres 中的这种“文字”语法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

匹配 h2/postgres 中的文字百分比?

将对象文字包装在箭头函数中的括号是啥意思? [复制]

是啥? JavaScript 中的语法是啥意思?

从 Postgres 中的表函数返回多行的最简单方法是啥?

匹配h2 / postgres中的文字百分比?

Postgres 中的 pg_class 是啥以及如何使用 pgAdmin 4 查看它?