在MySQL中查询两个表来填充PHP数组

时间:2012-07-05 19:14:13

标签: php mysql arrays

我使用两个查询来从各自的表中选择值,我想将它们放入一个数组中。例如,使用下面的代码,我想要

id, last, first, course1, course2, course3 

...来自

$startsem1 and $endsem1 

...在一个数组中。

$startsem1 = $startsem."reg";
$endsem1 = $endsem."reg";
$query = "SELECT id,last,first,course1,course2,course3 FROM $startsem1 
     UNION SELECT id,last,first,course1,course2,course3 FROM $endsem1";
$result = mysql_query($query) or die(mysql_error());

while ($row = mysql_fetch_array($result))
    {
        print_r($row); echo "<br><br>";
    }

2 个答案:

答案 0 :(得分:1)

合并数据集有两种方法:

  1. SQL UNION查询
  2. 使用array_merge()或许多PHP函数中的另一个进行数组操作
  3. 帖子建议你想同时使用两者。其实你会选择一个。

    如果使用第二个,UNION查询没有意义,因为它产生一个结果。您需要两个单独的查询,两个结果,两个数组。

    如果您使用第一个,您可能仍然具有数组函数(例如array_merge())或循环操作来清理或解决数据问题。

答案 1 :(得分:0)

while ($row = mysql_fetch_array($result))
    {
        $array[] = $row;
    }
echo nl2br(print_r($array, TRUE));