2016-08-21 4 views
-1

私は多くの列を持つ "顧客"テーブルを持っています。私はそれらのうちの2つだけを使う必要があります。日付(顧客が登録された日付)、リファラー(顧客がGoogleからどのように私たちを見つけたか:GoogleまたはFacebookまたは友人)。毎月、各リファラーによって追加された顧客数を表示する必要があります。例:2016-8 facebookで4人、友人で10人、googleで13人の顧客)。もちろん、それは毎月私に例題の結果を与えるはずです。sqlクエリですべての月がわかりません

私はこのクエリを試しましたが、すべての月に2ヶ月しか与えず、そのうちの1ヶ月が2回表示されています。誰かが私の質問を見直すことができますか?

SELECT referrer,date, COUNT(`date`) 
FROM `customers`   
GROUP BY `referrer`; 
+0

てみグループリファラ、日付:) – Moptan

+0

によってそれがあります私はいいえ投稿したクエリの参照元でグループ?\ – tanyaa

答えて

1

この試してみてください:あなたは、特定の年のための出力を選択する場合は、これを試すことができ

SELECT referrer,date, COUNT(date) 
FROM customers 
GROUP BY Year(date), MONTH(date), referrer; 

を:

SELECT referrer,date, COUNT(date) 
FROM customers 
WHERE record_date.YEAR = 2016 
GROUP BY Year(date), MONTH(date), referrer; 
+0

ありがとう!おそらく私の日付に日数があるので、毎月1回は表示されないのでしょうか?それは毎月私に何度も表示されます – tanyaa

+0

出力に月が表示されない場合、その月に登録された顧客がないことが原因です。 –

+0

あなたは私を理解できませんでした....私は毎月3枚の賞品を表示する必要があります。それは顧客とその偉大な人を持っていない月を示していません。 – tanyaa

関連する問題