我有4個表格(比如說A,B,C和D)都帶有'date'列。我需要在所有四個表格中找到最常見的日期值。也就是說,所有四個表格中存在的最大值。我怎樣才能做到這一點?現在,我正在尋找所有四個表的MAX日期值的MIN,但是在MIN存在於一個表中但不存在於第二個表中的情況下失敗。跨表格在列中獲得最大公共值
這裏是使事情更清晰的例子:
A.date
------
2015-03-31
2015-03-30
2015-03-29
2015-03-27
B.date
------
2015-03-30
2015-03-29
2015-03-28
2015-03-27
C.date
------
2015-03-29
2015-03-27
2015-03-26
2015-03-25
D.date
------
2015-03-28
2015-03-27
2015-03-26
2015-03-25
我在做什麼,以找到最常見的日期是:
SELECT MIN(max_date) FROM (
SELECT MAX(date) AS max_date FROM A
UNION
SELECT MAX(date) AS max_date FROM B
UNION
SELECT MAX(date) AS max_date FROM C
UNION
SELECT MAX(date) AS max_date FROM D
) T;
這給了我2015年3月28日,但隨後我意識到有些表格可能根本沒有這個日期。我實際想要得到的日期是2015年3月27日。
請顯示sql的y你說的是失敗以及例子和預期的數據。 – paqogomez 2015-04-02 20:41:08
如果你只想要最大日期,你可不可以從每張表中選擇每個日期,將它們結合在一起並獲得最大值? – paqogomez 2015-04-02 20:42:05
@paqogomez。 。 。因爲OP不想要最大日期。 OP要求出現在*全部四個*表中的最大日期。 – 2015-04-02 21:10:29