我正在尝试在Postgres中查询一些数据,我想知道如何使用某种模式匹配而不仅仅是选择行-例如SELECT * FROM schema.tablename WHERE varname ~ 'phrase'
-但要选择SELECT
语句中的列,尤其要根据这些列的通用名称来选择它们。
我有一张表格,其中包含许多年来对比率的估算值-例如,每年采摘的苹果-以及每年上下95%的置信区间。 (作为参考,每个估算值和95%的置信区间均来自不同的来源-确切地说,是一份书面报告;这些来源是我的信息,表格描述了每个来源的各个方面。基于下面的评论,我认为是重要的是,读者应该知道该关系数据库中的分析单位是一份书面报告,其中对每年采摘的东西进行了不同的估计-苹果在一个表中,橙子在另一个表中,梨在三分之一。)
因此在此表中,每年都有三列/变量:
rate_1994
low_95_1994
high_95_1994
问题是,配置项大部分为空-尚未填写。在我的查询中,我实际上只是想拉出每年的费率:所有以{{1}开头的变量}。如何在我的rate_
语句中表达这一点?
我正在尝试使用SELECT
来执行此操作,但是我一直在找回错误。
我已经在StackOverflow上做了一些探索,并且我感觉甚至不可能,但是我正在尝试确保这一点。如果不可能,可以很容易地将表分为两个新表:一个仅包含费率,另一个具有CI。
(为便于记录,我查看了诸如此类的帖子: Selecting all columns that start with XXX using a wildcard?)
谢谢!
答案 0 :(得分:0)
如果您基本要问的是可以根据执行时间条件动态选择列,
否。
但是,您可以使用PL / SQL将查询构建为字符串,然后使用EXECUTE IMMEDIATE
执行查询。