2012-02-07 68 views
0

我有插入行,當某一功能的網站和郵票的日期所用的表。集團和操作基於多個列

code-/----date----/--type 
-----/------------/------ 
--1--/--2012-2-1--/-used 
--1--/--2012-2-3--/-saved 
--1--/--2012-1-3--/-printed 
--2--/--2012-2-1--/-used 
--2--/--2012-2-2--/-printed 

我必須報告的時間碼1(打印或保存或使用)今天或昨天的數目,漲幅比上月(日期範圍)

我開始用這樣的:

$stat_query = mysql_query("SELECT code, type, date FROM tracking WHERE code IN ('$htL','$htG','$htR') GROUP BY code, type, date"); 

我使用IN操作數,因爲每個用戶具有3個碼來跟蹤與對於每種類型的無限日期項。

我真的很失落來這裏做什麼。

+0

所以你需要返回某個'code'在那裏的日期範圍的次數?你需要通過'type'分開計數嗎?使用 – 2012-02-07 23:17:31

+0

肯定的,那麼代碼一種類型的今天7項或在過去7天或其他日期範圍20項.. – 2012-02-07 23:20:17

回答

0

你需要構建日期範圍並修改查詢。下面是表示過去一天code計數的例子:

SELECT `code`, COUNT(`code`) as code_cnt 
FROM tracking 
WHERE 
    `code` IN ('$htL','$htG','$htR') AND 
    `date` BETWEEN DATE_SUB(now(), INTERVAL 1 HOUR) AND now() 
GROUP BY `code` 

退房的DATE_SUB文檔以獲得更多幫助

+0

感謝阿龍,現在要讀它。 – 2012-02-07 23:43:38

0

GROUP BY代碼,類型,日期在這個例子中使它只返回一條記錄。由於所有代碼行都會在不同的輸出行中進行彙總,因此類型也會越來越少。請檢查您的GROUP BY字段。

+0

你會如何檢索次數,讓你可以輕鬆地顯示條目的數量對於任何給定日期範圍? – 2012-02-08 00:07:17