我有一個MySQL數據庫(InnoDB引擎),它隨着時間的推移,跟蹤到一個特定項目的用戶的訪問:確定表日期範圍內新的唯一項目,其中一個項目可以出現多次
表格式 :
(pk) item_id: bigint
(pk) date: date
user_id: bigint
訪問同一用戶可以在此表中多次出現,並且該表可以很容易地有(幾千每件)數億行。
由於表格是項目和日期的聚集,所以查詢圖表日期範圍非常快,但我還想確定哪些用戶第一次出現在日期範圍中的哪個用戶是。
我怎麼能這樣做有效地?
的樣本數據:
item_id | date | user_id
---------------------------------
1 | 2000-01-01 | 2
1 | 2000-01-02 | 1
1 | 2000-01-03 | 3
1 | 2000-01-04 | 4
1 | 2000-01-05 | 1
1 | 2000-01-06 | 3
在項目選擇新用戶,因爲2000-01-03 應該返回:
3, 4
不幸的是,用戶發生的事件必須是該項目的全局,而不是在特定的日期範圍內。 – Ryall