Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да напиша SQL заявка, която отчита броя на редовете на месец и година?

Не съм запознат със структурата на базата данни на vBulletin, но трябва да направите нещо подобно , като приемем, че вашата потребителска таблица има дата/дата и час/време created_date или reg_timestamp колона или нещо подобно, използвайки 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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да АВТОМАТИЧНО ИНКРЕМЕНТИРАНЕ, започвайки от определено число/отместване?

  2. MySQL - UPDATE заявка с оператор SET в зависимост от резултата от предишния оператор SET

  3. Генеалогично дърво mysql

  4. Как да извикам Java код от MySQL?

  5. Как мога автоматично да създам имейл адрес за членовете на моя уебсайт?