我有多个包含日期字段的表。这些表不共享任何其他共同列,我需要计算所有表中超过特定日期的总行数。
例如,如果我有两个表,如下所示
表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。
答案 0 :(得分:1)
select count(*) from
(
select date dd from t1
union all
select date from t2
)dt
where dd>2013/8/1
SQLFiddle演示:
答案 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)