我代表航班數據的多個表:在具有多個SQL選擇價格最低的項目加入
航班:
ID | NMB | DATE
1 | CA1 | 2017-05-26
2 | CA1 | 2017-05-27
3 | CA2 | 2017-05-26
4 | CA2 | 2017-05-27
機場:
ID | NAME
1 | JFK
2 | LAX
flights_arrival:
ENTITY_ID (flights) | TARGET_ID (airports)
1 | 1
2 | 1
3 | 2
4 | 2
航班價格:
ENTITY_ID (flights) | VALUE
1 | 455
2 | 650
3 | 750
4 | 880
我試圖爲每個抵達機場的每個航班選擇最低價格。我想是這樣的:
ID | ARRIVAL | PRICE
1 | 1 | 455
3 | 2 | 750
這是SQL查詢我建立,但是應用在flights_price
爲飛行不會返回只有最低價格MIN
功能,但所有條目:
SELECT
f.id AS id,
fa.target_id AS arrival,
MIN(fp.value) AS price
FROM flights_price AS fp
JOIN flights AS f ON fp.entity_id=f.id
JOIN flights_arrival AS fa ON fa.entity_id=f.id
WHERE
fa.target_id IN (1, 2)
GROUP BY
fa.target_id,
fp.value,
f.id;
什麼我做錯了?我也試過沒有成功的子查詢。
作爲一個規則,一個組由事情之一選擇。如果十億左右的答案對這裏的類似問題沒有幫助,請參閱https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-我想要一個非常簡單的sql查詢 – Strawberry
這裏的'ARRIVAL'列屬於哪個表列 –
'ARRIVAL'屬於'flights_arrival',被'fa'替代。 –