日付フィールドを含む複数のテーブルがあります。テーブルは他の列を共有していないため、特定の日付を過ぎたすべてのテーブルの行の総数を数える必要があります。
たとえば、次のような2つのテーブルがある場合
表1
x, x, 2013/8/2
x, x, 2013/8/5
表 2
x,x,x,2013/7/3
x,x,x,2013/8/4
date を指定すると、このクエリは 3 を返します2013/8/1
。
日付フィールドを含む複数のテーブルがあります。テーブルは他の列を共有していないため、特定の日付を過ぎたすべてのテーブルの行の総数を数える必要があります。
たとえば、次のような2つのテーブルがある場合
表1
x, x, 2013/8/2
x, x, 2013/8/5
表 2
x,x,x,2013/7/3
x,x,x,2013/8/4
date を指定すると、このクエリは 3 を返します2013/8/1
。
select count(*) from
(
select date dd from t1
union all
select date from t2
)dt
where dd>2013/8/1
実証する SQLFiddle:
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)