【问题标题】:Create function/variable/parameter in pgAdmin with specific values在 pgAdmin 中创建具有特定值的函数/变量/参数
【发布时间】:2014-06-03 13:57:22
【问题描述】:

不确定这是否可行以及最好的方法是什么,但我有一个随着时间增长的值列表(比如“ACBC”、“ADFC”、“AGGD”等)。我想在 pgADmin 中使用这些值作为 SQL 语句的一种变量/参数;例如:

代码 = {'ACBC', 'ADFC', 'AGGD'}

SQL: 语句 => SELECT * FROM xxx WHERE SUBSTRING IN (Codes)

这是否可以通过变量、参数、函数或其他任何方式实现?

【问题讨论】:

    标签: postgresql variables parameters


    【解决方案1】:

    我可以想到以下选项:

    1) 创建单独的表

    create table qry_params(prm_value varchar);
    insert into qry_params values
      ('xxx'),
      ('yyy'),
      ('zzz');
    
    select * from xxx where substring in (select prm_value from qry_params)
    

    只要你有新的参数,你只需要把它添加到表格中。

    2) 查询顶部的 CTE

    使用如下查询:

    with params (prm_value) as (select values ('xxx'), ('yyy'), ('zzz'))
    select * from xxx where substring in (select prm_value from qry_params)
    

    只要有新参数,只需将其添加到 CTE 中即可。

    【讨论】:

      猜你喜欢
      • 2021-10-14
      • 2021-06-16
      • 2012-11-23
      • 1970-01-01
      • 1970-01-01
      • 2018-07-19
      • 2013-08-24
      • 1970-01-01
      • 2011-06-28
      相关资源
      最近更新 更多