查看具有日期字段的多个表,并获取超过特定日期的所有表

时间:2013-07-09 23:28:38

标签: sql postgresql

我有多个包含日期字段的表。这些表不共享任何其他共同列,我需要计算所有表中超过特定​​日期的总行数。

例如,如果我有两个表,如下所示

表1

x, x, 2013/8/2
x, x, 2013/8/5

表2

x,x,x,2013/7/3
x,x,x,2013/8/4 

如果我指定日期2013/8/1,则此查询将返回3。

2 个答案:

答案 0 :(得分:1)

select count(*) from
(
select date dd from t1
union all
select date from t2
)dt
where dd>2013/8/1

SQLFiddle演示:

http://sqlfiddle.com/#!2/ff17e/1

答案 1 :(得分:0)

total_cnt Integer;
threshhold_date DateTime;

threshhold_date = '2013-03-01';

total_cnt := (SELECT Count(*) FROM TableA WHERE DateField > threshhold_date)
              +
            (SELECT Count(*) FROM TableB WHERE DateField > threshhold_date)