【问题标题】:How can I access a postgres table by name?如何按名称访问 postgres 表?
【发布时间】:2009-03-11 04:28:33
【问题描述】:

按名称访问表

我需要通过给我的字符串值来引用表名。我将如何在 Postgres 中执行此操作?可以选择使用带有 PLPGSQL 的存储过程,但是其他语言将不可用。

例如:

SELECT count(*) FROM some_function_that_returns_data_by_table_name('mytable');

我有一种感觉,我很久以前就使用 pg_XXX 表和大量的连接来做到这一点,但我现在似乎不知道该怎么做。有人有什么想法吗?

虽然我可以在应用程序级别生成名称,但如果我可以按名称访问表,那将是理想的,这样代码可以更简单,在不同应用程序之间轻松共享,并可能在存储过程中使用.

【问题讨论】:

    标签: sql database postgresql


    【解决方案1】:

    如果可以接受使用 PL/pgSQL,请查看 EXECUTE。

    【讨论】:

      【解决方案2】:

      您为什么不能简单地分 3 步完成此操作?

      1. 调用给出名称的函数
      2. 使用名称创建 SQL
      3. 执行 SQL

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-24
        • 2020-01-22
        • 1970-01-01
        • 1970-01-01
        • 2012-10-01
        相关资源
        最近更新 更多