2016-01-27 34 views
0

我的查詢都很好,但這是很好的,但它拉動了所有產品的最小和最大價格,我只想提取具有狀態「a」PHP JOIN產品狀態的查詢調整,但無法工作

我在查詢中有條件,但不認爲它是正確的。表cscart_product_prices沒有狀態只有cscart_products所以需要一些如何添加條件來回傳狀態a的價格拉回來,如果這是有道理的?

$proMaxPrice = db_get_row("select max(price) as mianprice FROM cscart_product_prices as cpp LEFT JOIN cscart_products_categories as cpc on cpc.product_id=cpp.product_id LEFT JOIN cscart_products AS cp ON cpc.product_id = cp.product_id where cpc.category_id ='".$key."' AND cp.status='A' "); 
$proMinPrice = db_get_row("select min(price) as mianprice FROM cscart_product_prices as cpp LEFT JOIN cscart_products_categories as cpc on cpc.product_id=cpp.product_id LEFT JOIN cscart_products AS cp ON cpc.product_id = cp.product_id where cpc.category_id ='".$key."' AND cp.status='A' "); 

或多或少帶回分鐘最大價格爲類別中的產品,但不管產品有什麼樣的地位,「A」是積極的,「d」被禁用,「H 「隱藏起來......它爲所有人贏得價格,而我只需要」A「活躍的產品。

+0

任何人有任何想法?對不起,再次要求,只有在這裏1:30,需要解決今晚,並推動住一旦修好,所以不能睡覺,直到我修好它,迄今沒有運氣一切lol – James

回答

0

沒有表定義和一些示例數據不容易找出預期的查詢是什麼。

但是,你有沒有想過使用內連接而不是左連接? 另外,我會重寫這樣的查詢:

select max(price) as mianprice 
FROM cscart_product_prices as cpp 
LEFT JOIN cscart_products_categories as cpc on cpc.product_id=cpp.product_id AND 
    cpc.category_id ='".$key."' 
LEFT JOIN cscart_products AS cp ON cpc.product_id = cp.product_id AND cp.status='A' 
+0

我曾嘗試在phpmyadmin設置類別ID和最小和最大返回199這是正確的,只是當在網站上的生產並不奇怪,但正如你所說,寧願使用內部連接,所以讓我現在就放棄,生病讓你知道... – James

+0

get:Unknown列 '的第' 在 'cp.status'(1054)選擇分鐘(價格)作爲mianprice \t \t \t \t \t \t \t \t \t FROM cscart_product_prices作爲CPP \t \t \t \t \t \t \t \t \t LEFT JOIN上cpc.product_id = cpp.product_id cscart_products_categories作爲黨和\t \t \t \t \t \t \t \t \t cpc.category_id = '7' 和cp.status = 'A' – James

+0

認爲只有cscart_products有如果狀態幫助 – James