【问题标题】:RIGHT() function in Postgres is not rightPostgres 中的 RIGHT() 函数不正确
【发布时间】:2018-08-29 02:47:11
【问题描述】:

我正在审核Postgres RIGHT() function documentation,对吧..

对于文档示例:

SELECT RIGHT('XYZ', 2);

根据文档,我期待正确的响应;

 right
-------
 YZ
(1 row)

但后来我在 Aginity Workbench 中运行了查询,结果不正确。我明白了:

found "RIGHT" (at char 8) expecting an identifier found a keyword

有人可以帮我改正吗?

【问题讨论】:

标签: sql postgresql string-function


【解决方案1】:

right 函数仅从 Postgres 9.1 版开始可用。我猜测生成该错误消息的版本使用的是 9.0 或更早版本。

查看没有right 功能的documentation for 9.0,然后查看表明right 可用的documentation for 9.1。

作为一种解决方法,您可以使用substr:

select
    substr('Hello World', char_length('Hello World') - 4, 5);

World

【讨论】:

  • 如果是版本,我可能会抱怨在版本上不会落后太多。我认为在 9.6 版左右添加了“如果不存在则创建表”,我觉得这非常有用。升级如此简单,通常可以省去很多麻烦
猜你喜欢
  • 1970-01-01
  • 2016-12-19
  • 1970-01-01
  • 2021-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多