よし、テーブルが2つあるぞ
最初の 1 つが呼び出されmsg、もう 1つが呼び出されますmsg_t
msg(id、send_type、..)
msg_t(id、msg_id、send_time)
私がやろうとしているのはmsg、 send_type = 1 のすべての行を取得することです
そして、それぞれのエントリを数え、月msg_tごとmsgにグループ化します
どうやってやるの?
SELECT a.ID, MONTHNAME(b.send_time), COUNT(b.msg_id) totalCount
FROM msg a
LEFT JOIN msg_t b
ON a.ID = b.msg_id
WHERE a.send_type = 1
GROUP BY a.ID, MONTH(b.send_time)
を使用すると、テーブルにレコードがないLEFT JOIN場合はゼロの値が表示されますmsg.IDmsg_t
SELECT
m.id,
MONTH(send_time)
COUNT(t.*)
FROM msg m
INNER JOIN msg_t t ON m.id = t.msg_id
WHERE m.send_type = 1
GROUP BY m.id,
MONTH(send_time)