我想知道如何在PHP代码中,执行两个mysql查询(query_1和query_2),但只为query_1的每个结果显示query_2的结果:
query_1==> `SELECT tbl_name FROM table_ref `
query_2 ==> `SELECT id,name FROM (result of the first query)`
query_1返回表名:table1, table2, table3,对于query_2,我必须这样做:
SELECT id,name FROM table1
和SELECT id,name FROM table2
…如在循环中
提前感谢您的建议!
SELECT id, name FROM sometable WHERE name in (SELECT tbl_name FROM table_ref)
在这个例子中,两个表之间需要有一个连接
在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>';
o/p:
Array
(
[tbl_name1] => Array
(
[id] => id1
)
[tbl_name2] => Array
(
[id] => id2
)
)