0
我想寫一個查詢,將返回按日期範圍分組的數據,我想知道是否有辦法在一個查詢(包括計算)中做到這一點,或者如果我需要寫三個單獨的數據?我表格中的日期存儲爲unix時間戳。MySql查詢 - 按日期範圍分組?
例如,我的記錄是這樣的:
id type timestamp
312 87 1299218991
313 87 1299299232
314 90 1299337639
315 87 1299344130
316 87 1299348977
497 343 1304280210
498 343 1304280392
499 343 1304280725
500 343 1304280856
501 343 1304281015
502 343 1304281200
503 343 1304281287
504 343 1304281447
505 343 1304281874
566 90 1305222137
567 343 1305250276
568 343 1305387869
569 343 1305401114
570 343 1305405062
571 343 1305415659
573 343 1305421418
574 343 1305431457
575 90 1305431756
576 343 1305432456
577 259 1305441833
578 259 1305442234
580 343 1305456152
581 343 1305467261
582 343 1305483902
我想寫一個查詢,會發現之間的「創建」日期的所有記錄:
- 2011-05 -01和2011-06-01(月)
- 2011-03-01 2011-06-01和(區)
- 2010-05-01 2011-06-01 AND(年)
我嘗試以下(在這種情況下,我硬編碼了UNIX值正好一個月,看我能得到它的工作...):
SELECT COUNT(id) AS idCount,
MIN(FROM_UNIXTIME(timestamp)) AS fromValue,
MAX(FROM_UNIXTIME(timestamp)) AS toValue
FROM uc_items
WHERE ADDDATE(FROM_UNIXTIME(timestamp), INTERVAL 1 MONTH)
>= FROM_UNIXTIME(1304233200)
但是,這似乎並沒有工作,因爲fromValue是:2011-04-02 21:12:56和toValue是2011-10-25 06:20:14,顯然,它不是2011年5月1日和6/1/2011。