postgresql - 动态查询postgres

标签 postgresql dynamic

我是 postgres 的新手,正在运行以下动态查询

EXECUTE 'Select * from products';

我收到以下回复。

ERROR: syntax error at or near "'Select * from products'" 
LINE 1: EXECUTE 'Select * from products';

我知道这是我缺少的基本内容

最佳答案

EXECUTE plpgsql 的语句,它会执行您正在尝试执行的操作 - 执行 SQL 查询字符串。您标记了 ,所以这可能就是您要找的。

仅适用于 plpgsql 函数或 DO 语句(匿名代码块)。 The distinction between EXECUTE and SQL-EXECUTE made clear in the fine manual :

Note: The PL/pgSQL EXECUTE statement is not related to the EXECUTE SQL statement supported by the PostgreSQL server. The server's EXECUTE statement cannot be used directly within PL/pgSQL functions (and is not needed).

如果您想从动态 SELECT 返回值查询如您的示例所示,您需要创建一个函数。 DO语句总是返回 void . More about returning values from a function in the very fine manual.

关于postgresql - 动态查询postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10709624/

相关文章:

postgresql - 为什么 hibernate 在删除时生成交叉连接?

sql - 将 PostgreSQL 表连接到另一个表的列

ubuntu - Ansible 动态库存脚本 - 奇怪的行为

css - 动态加载 CSS 和 Javascript 是 Hackish 还是 Good Practice?

Swift 3 - 类名/类型查找

postgresql - 跟踪长时间运行函数(从外部)进度的最佳方法 - PostgreSQL 11?

sql - 如何让带有子句的 Postgresql 处理多个语句?

sql - 错误 : GEOSIntersects: TopologyException: side location conflict

javascript - 动态生成json属性值

javascript - 动态启用/禁用调试代码