在 psql 命令行上传递数组参数
Posted
技术标签:
【中文标题】在 psql 命令行上传递数组参数【英文标题】:Pass an array parameter on psql command line 【发布时间】: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") ...
但我得到一个解析错误。谁能解释一下?
【问题讨论】:
【参考方案1】:对数组值使用单引号。双引号用于 Postgres(和标准 SQL)中的标识符。
select * from getLocationId('1.0,2.0');
ARRAY
constructor 的替代语法:
select * from getLocationId(ARRAY[1.0,2.0]);
【讨论】:
以上是关于在 psql 命令行上传递数组参数的主要内容,如果未能解决你的问题,请参考以下文章
awk从入门到入土(23)awk内置变量ARGCARGC--命令行参数传递
awk从入门到入土(23)awk内置变量ARGCARGC--命令行参数传递