我有一個「活動」表,一個「客戶」表和一個「customer_activity」表。在「活動」表中,每個活動都有自己的ID和開始,結束年份: 因此,每一行都代表一個活動,第一列是開始年份,第二列是結束年份(也就是說,以下是名稱爲X1的特定客戶的活動)。SQL中的每年累計計數
Start End Act_ID
2007 2008 1
2007 2008 2
2009 2009 3
2008 2008 4
2008 2011 5
2007 2008 6
2007 2008 7
2006 2007 8
2006 2006 9
2011 2013 10
2011 2013 11
表「客戶」有客戶ID和客戶名稱。最後, 表「customer_activity」具有客戶ID和活動ID。 我想通過客戶名稱查詢(說與客戶名稱X1),並得到一個表是這樣的:
Year New Total
2006 2 2
2007 4 5
2008 1 4
2009 1 2
2010 0 1
2011 2 3
2012 0 2
2013 0 2
我使用MariaDB的10.1.10。 任何人都可以幫助我嗎?
標記您的問題與您正在使用的數據庫。 –
你已經在那個活動表的腳下開槍自殺了。最好用ID,日期來設置它。然後,可以很簡單地說'按年份(日期)'從表名組中選擇年份(日期),總和(id)'。事實上,您可能必須使用程序填寫缺失的日期。 – SandPiper
一些算法最好在應用程序代碼中完成,而不是SQL。 –