php - 在 PHP 循环中将 MySQL 结果一起附加

标签 php mysql while-loop

使用 PHP,对于 MySQL 查询结果集中的每一行,我需要执行另一个 MySQL 查询。到目前为止,我有

$result = mysql_query("SELECT id, state FROM states WHERE region='given_region'")
or die(mysql_error());

while($row = mysql_fetch_row($result))
{
    $state = $row['state'];
    $r = mysql_query("SELECT * FROM locations WHERE state REGEXP '(^|,)".$state."($|,)'");
}

现在我需要将所有结果 $r 附加到一个结果集中,然后我可以使用标准的 while 循环遍历该结果集,但是,我非常有限的 PHP 技能让我无法获得执行此操作的代码。

任何人都可以深入了解我将如何在给定的 while 循环中将所有结果附加到一组中吗?

谢谢!

最佳答案

了解 SQL joins :

SELECT states.id, states.state, locations.*
FROM   states LEFT JOIN locations USING(state)
WHERE  states.region = 'given_region'

关于php - 在 PHP 循环中将 MySQL 结果一起附加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12878249/

相关文章:

PHP:如何使用类函数?

php - Laravel 中需要什么 env 和 env.example 文件?

php - 为什么我的查询不起作用

c# - while 在 C# 中使用多个条件循环

python - 如何在 Python 代码中使用字符和嵌套 while 循环绘制倒三角形?

php - 使用 System_Daemon 包的 Codeigniter 守护进程

mysql - 对固定值很少但值占总行数不到 25% 的列进行索引

mysql - 如何使用 mysql join 从最右边的表中仅返回一行

c - 在按Ctrl + D后停止用户输入需要按2次。为什么?

php - 在 ajax 成功时显示用户消息