1
私はMySQLクエリに問題があります。平日までにMysqlグループを入力し、平日に記入しない
平日に記入する必要があります。たとえば、以下のSQLの例では日曜日(平日7)です。
のMySQL 5.6スキーマのセットアップ:
create table test (
`id` INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
`date` DATETIME
);
INSERT INTO test (`date`) VALUES
('2016-05-16 00:00:00'),
('2016-05-17 00:00:00'),
('2016-05-18 00:00:00'),
('2016-05-20 00:00:00'),
('2016-05-21 00:00:00'),
('2016-05-22 00:00:00'),
('2016-05-16 00:00:00'),
('2016-05-17 00:00:00'),
('2016-05-18 00:00:00'),
('2016-05-20 00:00:00');
クエリ1:
SELECT WEEKDAY(date) AS weekday,
COUNT(id) AS posts
FROM test
GROUP BY WEEKDAY(date)
| weekday | posts |
|---------|-------|
| 0 | 2 |
| 1 | 2 |
| 2 | 2 |
| 4 | 2 |
| 5 | 1 |
| 6 | 1 |
私はこの行も返すと思います。
| 3 | 0 |
私の完全なクエリは非常に複雑なので、私はあなたのための迅速な解決策を見つけることを望みます。
あなたはその日のデータがありません。したがって、返すデータがないときに行を返さない。 –
あなたは何かが欠落していると思う...あなたが '平日' ** 0 **を取得した場合、あなたは '平日 'を得ることができない** 7 * *(少なくともこの惑星ではない)。 – FDavidov
私はあなたが '平日= 3投稿= 0'を期待していると思う。 –