postgresql - 如何在 PostgreSQL 中声明变量

标签 postgresql

<分区>

我尝试在这样的代码中声明一个变量:

DECLARE
    p_country VARCHAR;
 p_country : = ''; 
SELECT p_country; 

但这是行不通的:

ERROR:  syntax error at or near "VARCHAR"
LINE 2:  p_country VARCHAR;

你能告诉我问题是什么吗?

最佳答案

在 postgresql.conf 中为 custom_variable_classes 创建一个新设置:

custom_variable_classes = 'var'

重新加载配置,您现在可以在所有数据库中使用变量“var”。

要创建变量 p_country,只需使用 SET:

SET var.p_country = 'US';
SELECT current_setting('var.p_country') AS p_country;

虽然不是很漂亮,但是很管用。

关于postgresql - 如何在 PostgreSQL 中声明变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2666861/

相关文章:

postgresql - pgsql如何计算两列的值

postgresql - Postgres 使用 cp1252 编码?

windows - “was unexpected at this time.”

PostgreSQL 使用 Ansible 进行对等身份验证失败

sql - 如何使用 JOIN 将列从一个表复制到另一个表

ruby-on-rails - 进行连接时选择唯一行

java - Hibernate:多个 native 查询组合在一起

postgresql 删除陈旧的锁

php - 在 postgresql 中对 JSON 列的搜索查询

postgresql - 函数根据参数从两个查询之一返回记录集