私は基本的にトラフィックソースに基づいてトラフィックをグループ化しようとしています
テーブルに次の列があるとします
Enrollment_ID | last_modified | リファラー 1 | 2012-07-01 15:00:00 | http://www.facebook.com/l.php?xyz 2 | 2012-07-01 16:00:00 | http://www.facebook.com/l.php?abc
リファラーが異なるので、リファラーでグループ化しても2とは表示されません。これが私が使用したクエリです。
count(*)as'Enrollments'、date_format(e.last_modified、'%d /%m /%y')as'Date'、if(LOCATE('facebook'、referrer)> 0、'facebook'、referrer )「リファラー」として 登録からe ここで、e.last_modified> = '2012-07-01 00:00:00' date_format(e.last_modified、'%d /%m /%y')、3でグループ化
これは正常に機能します。しかし、明らかに私は複数のリファラーを持つことになります。だから私はcaseステートメントを使うことを考えました
count(*)を'Enrollments'、date_format(e.last_modified、'%d /%m /%y')as'Date'として選択します。 ケースリファラー LOCATE('facebook'、referrer)>0の場合'facebook' LOCATE('google'、referrer)>0の場合'google' それ以外のリファラー 'リファラー'として終了 登録からe ここで、e.last_modified> = '2012-07-01 00:00:00' date_format(e.last_modified、'%d /%m /%y')、3でグループ化
これは期待どおりに機能しません。
1番目と2番目のクエリの場合-SQLフィドルを作成しました
最初-http://sqlfiddle.com/#! 2/70f6b/2
2番目-http://sqlfiddle.com/#! 2/ad890/3
誰かがそれを一瞥することができれば私は感謝します
御時間ありがとうございます