2013-09-28 79 views
0

我想按價格訂購。但是,如果價格高於0,我將從兩張不同的表格中獲得價格並比較它以獲得最低價格並打印出來。價格也可能只存在於一個數據庫中。我的代碼的粗略結構是:在這種情況下,我應該如何訂購價格

query1 = choose products 

while = fetch the products details { 

query2 = get the price1, order by price1 
query3 = get the price2, order by price2 

if statement to get the minimum price so price = minimum price 

if (price>0) { 
    echo product result 
} 

} 

如何根據價格訂購結果?

編輯:產品已被選中,我想獲得的產品的價格從兩個不同的價格表

+0

爲什麼不能通過ORDER BY子句同時獲取產品和價格? –

+0

你想在MySQL或PHP?它可以通過一個MySQL查詢完成。 –

+0

可能是一個想法添加一個mysql標記,因爲你的問題是與mysql相關的 – gwillie

回答

0

你可以做到這一點,在短短一個查詢,更高效:根據

SELECT `a`.*, LEAST(`b`.`price`,`c`.`price`) AS `price` 
FROM `products` `a` 
JOIN `price1` `b` ON `a`.`id`=`b`.`product_id` 
JOIN `price2` `c` on `a`.`id`=`c`.`product_id` 
WHERE `price`>0 
ORDER BY `price` ASC 

調整到您的數據庫的表和列。

+0

產品已被選中,我想從兩個不同的價格表中獲取產品的價格 – wiki

+0

@wiki然後使用此查詢作爲你的產品的一部分選擇,你不會有任何問題按價格排序 –

相關問題