我不熟悉的vBulletin的數據庫結構,但你應該做這樣的事情,假設你的用戶表有一個日期/日期/時間戳created_date
或reg_timestamp
列或somethi ng類似,使用MySQL的YEAR()和MONTH()函數。
select
count(*) as count,
year(reg_timestamp) as year
month(reg_timestamp) as month
from users
group by year, month;
這將導致本類似的東西:
+-------+-------+------+
| count | month | year |
+-------+-------+------+
| 4 | 11 | 2008 |
| 1 | 12 | 2008 |
| 196 | 12 | 2009 |
| 651 | 1 | 2010 |
+-------+-------+------+
編輯:關於戴維的評論: vBulletin的日期似乎是存儲在Unixtime格式。在這種情況下,只需用FROM_UNIXTIME
包裹欄將其轉換爲可讀的MySQL日期:
select
count(*) as count,
year(from_unixtime(reg_timestamp)) as year
month(from_unixtime(reg_timestamp)) as month
from users
group by year, month;
太感謝您了。只有一點需要注意的其他人誰讀這是vBulletin日期格式是在UNIX日期格式,需要轉換。所以看看我的格式化語法的原始問題 – Dave 2011-02-18 12:51:40