2013-09-24 139 views
3

我有值的變量如下查詢的結果如何在其他查詢的條件下使用子查詢?

select concat_ws(',',name,age) from table1 
inner join table2 on table1.id=table2.id 
where table1.height=150 

結果存放在varible $導致,在另一頁我想​​用一個新的查詢這個$結果,其中的條件爲以下

select address, state form table1 
where (**select concat_ws(',',name,age) from table1 inner join table2 
on table1.id=table2.id**)as val=$result 

我怎樣才能用在查詢這種狀況呢?

+0

你能告訴什麼是真正你想幹什麼? *可能*我們可以幫助您做到這一點,即使不使用子查詢。 – hims056

+0

用哪個字段比較第一個查詢的結果?目前您正在比較相同的查詢。即你正在做的是這樣的:'SELECT X,Y,Z FROM MyTable WHERE(SELECT A FROM MyTable)='(SELECT A FROM MyTable);' – hims056

+0

通常你可以在PHP中構造SQL語句時使用該變量,以便把它放到WHERE子句中。但是,從「在另一個頁面中」的聲明中,聽起來好像在您要使用它的頁面上沒有設置$ result。您需要將該變量傳遞給新頁面或重新計算值。除非將前一頁加載的變量存儲爲會話變量,否則它們不在範圍內。 –

回答

0

我不知道理解爲什麼你不能用簡單的財產以後這樣的:

SELECT address, state FROM table1 
INNER JOIN table2 ON table1.id=table2.id 
WHERE concat_ws(',',name,age) = '$result'