嘗試設置存儲過程以用於多系列圖表,並且需要爲每個客戶填寫提交範圍中的每個日期(即通過IN的變量)的日期值,即使存在在特定日期沒有該客戶的交易數據。MySQL在數據缺失情況下左連接填充值
我有這樣的查詢:
select
Customer.Name
, sum(if(Transaction.StopTime > Transaction.StartTime, Transaction.StopTime - Transaction.StartTime,0)) as TimeSpent
, Transaction.Date
from Customer
left outer join Transaction ON Transaction.CustomerID = Customer.CustomerID
and Transaction.Date >= str_to_date(DateFrom,'%m/%d/%Y')
and Transaction.Date <= str_to_date(DateTo,'%m/%d/%Y')
group by Customer.Name, Transaction.Date
返回是這樣的:
Name | TimeSpent | Date
------------------------------
john | 6 | 2014-03-01
mary | 12 | 2014-03-01
john | 0 | NULL
mary | 12 | 2014-03-02
john | 4 | 2014-03-03
mary | 0 | NULL
有沒有辦法讓日期的所有行通過子查詢或循環通過填充通過變量的值?
像這樣:
Name | TimeSpent | Date
------------------------------
john | 6 | 2014-03-01
mary | 12 | 2014-03-01
john | 0 | 2014-03-02
mary | 12 | 2014-03-02
john | 4 | 2014-03-03
mary | 0 | 2014-03-03
你想要日期的自定義值? – Hackerman
需要爲所有行填充日期,將期望的結果添加到帖子末尾 – TransitDataHead