2011-07-15 32 views
0

這裏是我的PHP的MySQL的句法我需要排序一個多表查詢,這是分組,可以做到沒有做子查詢?

$query_cruises = "SELECT * FROM cruises, fares WHERE cruises.id = fares.cruise_id AND cruises.offer = 'Y' GROUP BY cruises.code ORDER BY fares.offer ASC"; 

發生了什麼事是記錄不排序fares.offer。它列出了一個記錄(正確的),但沒有按照價格順序(應該顯示票價最低的價格)。

所以我得到的是兩張表,遊輪和票價。

的遊輪表有所有的巡航信息,票價表由cruises.id具有價格上巡航每個機艙的列表,相互關聯和fares.cruise_id

所以我加入了表,沒問題,但我想要一個包含郵輪名稱,描述和票價表中最低票價的記錄。

時,該記錄將改爲類似

克魯斯輪在英國,僅329£

希望這是什麼我想acheive感!

豐富:)

回答

0
SELECT cruises.*, 
     MIN(fares.offer) AS min_fare 
FROM cruises 
JOIN fares 
ON  fares.cruise_id = cruises.id 
WHERE cruises.offer = 'Y' 
GROUP BY 
     cruises.code 
ORDER BY 
     min_fare 
+0

啊對,我可以用一個minumum ...謝謝! – Rich

0
SELECT c.code, min(f.offer) 
FROM cruises c , fares f 
WHERE c.id = f.cruise_id 
AND c.offer = 'Y' 
GROUP BY c.code 
相關問題