0
私が持っている3つの列を持つ単純なreferrers
テーブル:グループMySQLのクエリ結果
Referrer //string name of partner
TimeOfVisit //timestamp
SessionID //(unique id only used when joining with sales data for conversion)
私はそれぞれの列で、分析のためのデータを取得し、積み上げ縦棒グラフを提示したいと思います訪問者の参照元を示す日。
これは私が一緒に入れて管理するクエリです:
SELECT
DATE(TimeOfVisit) AS Date,
Referrer,
COUNT(Referrer) AS VisitorCount
FROM referrers
GROUP BY CONCAT(DATE(time_of_visit), referrer)
それは一種の私が探していますデータ与えるん:
:私はこの2つの問題を抱えているArray
(
[0] => Array
(
[Date] => 2012-04-01
[Referrer] => adwords
[VisitorCount] => 3
)
[1] => Array
(
[Date] => 2012-04-01
[Referrer] => facebook
[VisitorCount] => 5
)
[2] => Array
(
[Date] => 2012-04-02
[Referrer] => adwords
[VisitorCount] => 6
)
...
を
- でも、私はそれを感じることができ、連結された文字列によってグループ化することは恐ろしいであること、それがちょうどいい感じていません。その結果を解析
- PHPスクリプトは、常に現在の参照元の完全なリストを知っておく必要がありますので、reffererからのクリックは、所定の日になかった場合には0の値を割り当てることができます。あまり言わないほどエレガントではありません。
この問題を解決するための最も効果的な方法は何ですか?実際にはMySQLでのみ解決できますか?
GROUP BYは素晴らしい作品!ありがとう!それは非常に遅かったに違いない、私はそれを試みたと思った、私はそうしなかったようだ。 私はGoogleのチャートを使用していますので、私は一度だけ、各データ列に、各値のインスタンスごとに色を割り当てる必要はありませんが、その後、私は不足しているもののためにゼロに記入する必要があります。それを達成する最速の方法は何でしょうか? –
データベースの結果から、すべての参照元のリストを最初にスキャンできます。いったんそれができたら、毎日繰り返すことができ、空白を埋めることができます。 –