我對PostgreSQL仍然不太熟悉,但明白在WHERE子句中不能使用聚合函數。如何根據PostgreSQL中的最短日期獲取結果
我有一個看起來像這樣的數據:
dID | status | created_at
---------------------------
2 | 2 | 2014-01-01
2 | 2 | 2014-02-01
3 | 2 | 2013-12-22
我基本上是試圖建立一個查詢,將返回來自基於最小created_at日期數據集的所有結果。下面的查詢將不能工作,但它確實強調什麼,我試圖完成:
select
*
from table1 a
JOIN table2 b ON (a.id = b.id)
where a.did = 2
AND b.status = 2
AND MIN(b.created_at) < '2014-01-31'
樣品臺以上是從一個非常大的數據集聚合,但我基本上要找到確實的是有一個列表特定狀態,其中created_at日期是在特定時間段定義的。有什麼建議麼?
應該結束的最小值是多少?整個桌子,或所有具有相同ID,或相同的「做」,或其他東西? – jjanes
@jjanes - 基本上,客戶可以擁有「多個」激活的狀態和日期。我想第一次找到當前仍處於活動狀態的客戶已激活 – JM4