2013-04-12 3 views
1

Я хотел бы знать, как я могу в PHP кода, выполнить два MySQL запросов (QUERY_1 и query_2), но отображать только результаты query_2 для каждого результата QUERY_1 подобное:PHP MySQL Два запросов

query_1==> `SELECT tbl_name FROM table_ref ` 

query_2 ==> `SELECT id,name FROM (result of the first query)` 

QUERY_1 возвращают имена таблиц: table1, таблица2, Таблицу 3, и с query_2 я должен сделать это:

SELECT id,name FROM table1 и SELECT id,name FROM table2 ... как в цикле

заранее спасибо за ваши советы!

+0

Надежда tbl_name не не TABLENAME :) не сходить с ума :) –

+0

нет это tbl_name :) –

ответ

1
SELECT id, name FROM sometable WHERE name in (SELECT tbl_name FROM table_ref) 

В этом примере должны быть связь между 2 таблицами

+0

да бу t это не совсем то, что мне нужно, потому что 'sometable' происходит от второго запроса, который следует за IN в вашем коде –

0

На стороне PHP, вы можете иметь дело с обоими результатами Арай как Фолля:

$array1 = array('tbl_name1' => '' ,'tbl_name2' => ''); 

$array2 = array('tbl_name1' => array('id' => 'id1'), 
       'tbl_name2' => array('id' => 'id2')); 

echo '<pre>'; 
print_r(array_intersect_key($array2, $array1)); 
echo '</pre>'; 

о/р:

Array 
(
    [tbl_name1] => Array 
     (
      [id] => id1 
     ) 

    [tbl_name2] => Array 
     (
      [id] => id2 
     ) 

) 
+0

, но как мне поместить два запроса вместе, особенно, что есть много результатов –

+0

array1 => результат query1, array2 => результат запроса2 –

+0

Я не вижу, где вы включаете query1 в query2, мне нужно что-то вроде: 'SELECT id, name FROM (SELECT tbl_name FROM table_ref)' –

Смежные вопросы