1

私は大きなSQLiteを持っています-次のようなエントリを含むデータベース:

rowID   timestamp    employee  sold         
1       1345294648   myer      1
2       1351508109   miller    2          
3       1351508109   smith     8
4       1351508109   miller    10
5       1351508109   smith     1
6       1353243448   myer      10

これは、特定の従業員が特定の時間に販売したユニットの量を表します。

PHPの次のコードを使用すると、従業員ごとの販売台数を取得できます。

<?php

$response = array();
$db = new PDO("sqlite:./db.sqlite");

$query_count = $db -> query("SELECT * FROM myTable GROUP BY employee");

while ($row = $query_count -> fetch(PDO::FETCH_ASSOC)) {

$current_employee = $row['employee'];

$response[$current_employee]["sold"] = $row['sold'];

}

echo json_encode($response);

?>

これにより、次のJSON形式のデータが返されます。

{ 
  "miller" : { "sold" : 12 },
  "myer" : { "sold" : 11 },
  "smith" : { "sold" : 9 }
}

次に、次のように、売上を個別の月に分けたいと思います。

{
   "miller":{
      "sold":{
         "january":1,
         "february":8,
         "march":9
      }
   },
   "myer":{
      "sold":{
         "january":10,
         "february":11,
         "march":13
      }
   },
   "smith":{
      "sold":{
         "january":11,
         "february":10,
         "march":10
      }
   }
}

その後、このような棒グラフでデータを視覚化したいのですが、スタックされていません。

http://bl.ocks.org/1134768

私を助けることができるSQL-リクエスト/PHP-スクリプトはありますか?

よろしくお願いします。

4

1 に答える 1

1

SQLiteは、日付ごとにデータを集約するために、さまざまな日付関数を提供します。

http://www.sqlite.org/lang_datefunc.html

于 2012-11-19T08:16:21.083 に答える