我想按日期在兩個表之間進行連接。 第一個表格每天都有日期 - 表a。 第二個表有幾個日期(不是每天的日期) - 表b。 我希望能夠加入兩個表的方式, a.date =不等於日期的MySQL連接
有沒有辦法做到這一點通過MySQL的(最大是小或等於a.date日期)?
我想按日期在兩個表之間進行連接。 第一個表格每天都有日期 - 表a。 第二個表有幾個日期(不是每天的日期) - 表b。 我希望能夠加入兩個表的方式, a.date =不等於日期的MySQL連接
有沒有辦法做到這一點通過MySQL的(最大是小或等於a.date日期)?
一個可能的解決方案見SQL Fiddle:
SELECT A.Date AS ADate, A.Value AS AValue,
(
SELECT B.Date
FROM B
WHERE B.Date <= A.Date
ORDER BY B.Date DESC
LIMIT 1
) AS BDate,
(
SELECT B.Value
FROM B
WHERE B.Date <= A.Date
ORDER BY B.Date DESC
LIMIT 1
) AS BValue
FROM A
WHERE A.Date = '2013-03-01'
在上面,我只是使用子查詢拉從表B
領域。
但是,如果a.date> b.date,「on」將不相等 –
我更新了我的答案 – Linger
考慮發佈DDLS和/或sqlfiddle一起使用期望的結果 – Strawberry