2016-10-19 18 views
0

特定の日付の間の各日の注文とピックアップを視覚化する折れ線グラフを描く必要があります。注文日と受取り日はunixtimeで保存されます。MySQL:2つの日付列を1つずつグループ化する

id order_date pickup_date 
------------------------------- 
1  1472749664  1472133376 
2  1472551372  1472567548 
3  1472652545  1472901368 
4  1473154659  1473512323 
5  1473512923  1475229824 
6  1475586643  1475652635 

私は何を後にしていますが、この

date  orders pickups 
------------------------------- 
01-09-2016 1   0 
02-09-2016 4   1 
03-09-2016 3   2 
04-09-2016 7   1 
05-09-2016 0   0 
06-09-2016 1   1 
07-09-2016 6   3 
08-09-2016 0   0 
08-09-2016 3   5 
10-09-2016 2   4 

のようなものである私は、たとえば、1列に基づいてカウントすることができます知っている:私のテーブルは次のようなものになります

SELECT 
    COUNT(id) AS orders, 
    FROM_UNIXTIME(order_dates, '%d-%m-%Y') AS date 
FROM orders 
GROUP BY request_date 

をしかし、私は2つの列を数え、毎日グループ化する方法がわかりません。

+0

ピックアップをカウントする別のクエリを作成し、日付に結合します。 – Barmar

答えて

0

あなたはこのようにクエリを使用することができます。

SELECT sum(orders) as orders, sum(pickups) as pickups, date 
FROM (
SELECT 
    COUNT(id) AS orders, 0 as pickups, 
    FROM_UNIXTIME(`order_date`, '%d-%m-%Y') AS date 
FROM orders 
GROUP BY order_date 
UNION 
SELECT 
    0 AS orders, COUNT(id) as pickups, 
    FROM_UNIXTIME(`pickup_date`, '%d-%m-%Y') AS date 
FROM orders 
GROUP BY pickup_date) ut 
GROUP BY date 

Hereはフィドルです。

関連する問題