2011-04-21 41 views
0

我有,我抓住一個數組複選框表單時提交表單:的MySQL/PHP - 查詢多個表,看是否記錄匹配數陣列

<input name='price[]' type='checkbox' value='1'/> 
<input name='price[]' type='checkbox' value='2'/> 
<input name='price[]' type='checkbox' value='3'/> 
<input name='price[]' type='checkbox' value='4'/> 

我再搶值數組和查詢數據庫這樣的:

$priceArray = $_POST['price']; 
$selectPrice = join(',',$priceArray); 

"SELECT DISTINCT community FROM community_prices WHERE prices IN ($selectPrice)" 

這個偉大的工程,但我需要做同樣的事情用3個額外的陣列和另外3個表,我想從相同的查詢做這一切。

所以例如:

表1 community_prices具有以下字段:ID,社區,價格

表2 community_amenities具有以下字段:ID,社區,便利設施

表3 community_demographic有以下字段:身份證,社區,人口統計

表4社區_產品具有以下字段:身份證,社區,產品

有關我如何做到這一點的任何想法?

回答

0

UNION可能是你的朋友在這裏。

0

使用JOIN從多個表中選擇,例如

SELECT "YOUR FIELDS" FROM table1 
    JOIN table2 ON table2.prices IN ($selectPrice) 
    JOIN table3 ON table3.community = table1.comumnity 
    JOIN table4 ON table4.community = table3.comumnity 
GROUP BY "YOUR FIELD" 
ORDER BY "YOUR FIELD" 
相關問題