私は新しい問題を抱えていますが、私が望む答えを得る方法がわかりません。それはおそらく私が見逃している単純なものです
mysql 5.5 を使用すると、'referrals' と 'status' の 2 つのテーブルがあります。appt_date でグループ化された、キャンセルされた紹介をカウントしたい:
SELECT SUM(1) AS count, appt_date FROM referrals
GROUP BY appt_date
JOIN status ON referrals.id=status.referral_id
WHERE status.status_name="cancelled"
これは、紹介が 2 回キャンセルされるまでは問題なく機能します。言い換えれば、ステータステーブルに一致する referral_id を持つ 2 つの行がある特定の ID を持つ紹介は、2 回カウントされます。
ここで結合操作を行うときに、各紹介レコードを 1 回だけカウントする方法は?
編集:私の本当の質問はこれだったはずです:
SELECT SUM(quantity) AS count, appt_date FROM referrals
GROUP BY appt_date
JOIN status ON referrals.id=status.referral_id
WHERE status.status_name="cancelled"
各紹介は独自の数量を持つことができるためです。