PHP MySQL两个查询


PHP MySQL Two queries

我想知道如何在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 table1SELECT 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
        )
)