2017-08-16 20 views
0

レポート表には、date_timeおよび個の数値のレコードが1日ごとに複数あります。毎日のレコードの数量の合計を別々に選択したいと思います。MySql GROUP BY date_timeおよびSUM数量

 connection.query("SELECT date_time, quantity FROM report WHERE date_time BETWEEN ? AND ?", [fromDate_query, toDate_query], function(err, rows) { 
       if (err) console.log(err); 
       else { 
       for (var i = 0; i < rows.length; i++) { 
        var row = rows[i]; 
        console.log("**********************************"); 
        console.log("date_time : " + row.date_time); 
        console.log("quantity : " + row.quantity); 
        console.log("**********************************"); 
       } 
       io.emit("chart", rows); 
       } 
       // console.log(rows); 
      }); 

表の例

| date_time   | quantity 
------------------------- 
| 2017-08-13 11:12:51 | 1 
| 2017-08-13 12:45:51 | 1 
| 2017-08-13 13:57:51 | 1 
| 2017-08-14 14:23:51 | 1 
| 2017-08-14 16:34:51 | 1 
| 2017-08-15 16:21:51 | 1 
| 2017-08-16 14:31:51 | 1 

選択後

| date_time | quantity 
------------- 
| 2017-08-13 | 3 
| 2017-08-14 | 2 
| 2017-08-15 | 1 
| 2017-08-16 | 1 

は、どのように私はこれを実現することができますか?

+2

を行います。 – jarlh

+0

@jarlhあなたはもっと具体的になることができますか? – ilvthsgm

答えて

2

日付の部分、そしてそのことによってグループを抽出し、日付とGROUP BYの日付にタイムスタンプに変換し、最終的にSUM量アップやCOUNT(quantity)

SELECT DATE(date_time) 
     ,SUM(quantity) 
    FROM report 
    WHERE date_time BETWEEN ? AND ? 
GROUP BY DATE(date_time)