【问题标题】:Pass an array parameter on psql command line在 psql 命令行上传递数组参数
【发布时间】:2015-02-15 10:39:38
【问题描述】:

我有一个 SQL 函数:

CREATE OR REPLACE FUNCTION getLocationId( lng double precision[]) ...

将数组作为参数。我知道如何从 SQL 脚本或 PHP 调用它,但我不知道如何从 psql 命令行调用它。我试过像在 PHP 中那样构造一个字符串:

select * from getLocationId("{1.0,2.0}") ...

但我得到一个解析错误。谁能解释一下?

【问题讨论】:

    标签: arrays postgresql quotes psql


    【解决方案1】:

    对数组使用单引号。双引号用于 Postgres(和标准 SQL)中的标识符。

    select * from getLocationId('{1.0,2.0}');
    

    ARRAY constructor 的替代语法:

    select * from getLocationId(ARRAY[1.0,2.0]);
    

    【讨论】:

      猜你喜欢
      • 2017-08-29
      • 2016-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-24
      • 2018-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多