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

MySQL WEEK() :Вземете всички седмици в диапазона от дати (с/без записи)

Ако приемем, че имате таблица с цели числа (наречени `numbers` по-долу):

   SELECT COALESCE(n, 0) AS num_complaints, CONCAT('Week ', i) AS `week`
     FROM (SELECT i
             FROM numbers
            WHERE i BETWEEN (SELECT WEEK(MIN(complaintRaisedDate)) FROM events LIMIT 1)
                            AND
                            (SELECT WEEK(MAX(complaintRaisedDate)) FROM events LIMIT 1))
          week_ranges
LEFT JOIN (  SELECT count(id) AS n, WEEK(complaintRaisedDate) AS weeknum
               FROM events
              WHERE categoryId=1
           GROUP BY weeknum) weekly_tallies
       ON week_ranges.i = weekly_tallies.weeknum
 ORDER BY `week` ASC;

SQL цигулка



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Шифроване на стойност с помощта на функцията AES_ECRYPT на MySQL, след което предаването й в URL низ, като се използва PHP

  2. mysql заявка, за да изберете един конкретен ред и друг произволен ред

  3. Пълнотекстови търсения в MySQL:доброто, лошото и грозното

  4. Как да добавите критерии за търсене и филтриране в Yii

  5. Как да считате NULL като MAX дата, вместо да я игнорирате в MySQL?