Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 29th, 2012  |  syntax: None  |  size: 1.82 KB  |  hits: 11  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. mysql count multi columns
  2. +------------+------------------+------+-----+-------------------+----------------+
  3. | Field      | Type             | Null | Key | Default           | Extra          |
  4. +------------+------------------+------+-----+-------------------+----------------+
  5. | id         | int(10) unsigned | NO   | PRI | NULL              | auto_increment |
  6. | user_id    | int(10) unsigned | NO   | MUL | NULL              |                |
  7. | video_id   | int(10) unsigned | NO   | MUL | NULL              |                |
  8. | user_agent | varchar(500)     | NO   |     | NULL              |                |
  9. | ip         | varchar(255)     | NO   |     | NULL              |                |
  10. | date_add   | timestamp        | NO   | MUL | CURRENT_TIMESTAMP |                |
  11. +------------+------------------+------+-----+-------------------+----------------+
  12.        
  13. +---------------------+---------+---------------+
  14. | date                | web     | iphone        |
  15. +---------------------+---------+---------------+
  16. | 2012-02-09          |    500  | 478           |
  17. | 2012-02-10          |    2377 | 204           |
  18. | 2012-02-12          |    247  | 21            |
  19. | 2012-02-13          |    4879 | 236           |
  20. | 2012-02-14          |    8767 | 101           |
  21. +---------------------+---------+---------------+
  22.        
  23. SELECT DATE(date_add) AS date,
  24.        SUM(CASE WHEN user_id = 2422 THEN 0 ELSE 1 END) AS Web,
  25.        SUM(CASE WHEN user_id = 2422 THEN 1 ELSE 0 END) AS iPhone
  26. FROM stats
  27. GROUP by DATE(date_add)
  28.        
  29. SELECT
  30.   DATE(date_add) AS date,
  31.   SUM(user_id != 2422) AS web,
  32.   SUM(user_id = 2422) AS iphone
  33. FROM stats
  34. GROUP BY date
  35.        
  36. SELECT
  37.   date,
  38.   SUM(user_id != 2422) AS web,
  39.   SUM(user_id = 2422) AS iphone
  40. FROM
  41.   ( SELECT DATE(date_add) AS date, user_id
  42.     FROM stats
  43.     GROUP BY date, user_id, ip, user_agent ) AS foo
  44. GROUP BY date