使用返回多个结果的PHP从2个表中获取记录

使用返回多个结果的PHP从2个表中获取记录,php,mysql,Php,Mysql,我有两张桌子。一个叫local\u requestors,一个叫local\u aid。它们都有不同的数据集,但它们都共享一列,local\u requestors中名为suser\u scheme的列与local\u aid表中名为scheme\u id的列相同 我想查询我的表以从local\u requestors表中获取所有数据,其中ID与local\u aid表中的行匹配 我使用了以下方法 $stmt = $conn->prepare('SELECT *

我有两张桌子。一个叫
local\u requestors
,一个叫
local\u aid
。它们都有不同的数据集,但它们都共享一列,
local\u requestors
中名为
suser\u scheme
的列与
local\u aid
表中名为
scheme\u id
的列相同

我想查询我的表以从
local\u requestors
表中获取所有数据,其中
ID
local\u aid
表中的行匹配

我使用了以下方法

$stmt = $conn->prepare('SELECT * 
                        FROM local_requestors 
                            INNER JOIN local_aid 
                        WHERE local_requestors.user_scheme=local_aid.scheme_id 
                        AND local_requestors.id = :aid_id');

$stmt->execute(['aid_id' => $user_id]);
while($row = $stmt->fetch()) {
    echo '<p>' . $row['user_name'] . '</p>';
}
不管我怎么做,我总是从
local\u requestors
表中得到相同的行,重复大约10次


我的目标是从
local\u-aid
打印记录中的用户名称,并从
local\u-requestors
打印大量相关记录

echo 'Hello ' . $aid_name . ', there is ' . $rowCount . ' people that need help in your area.;

我想你可能有点害怕

SELECT * 
FROM local_requestors 
    INNER JOIN local_aid ON local_requestors.user_scheme=local_aid.scheme_id 
WHERE local_requestors.id = :aid_id

根据您对所需内容的描述,您可能需要
左连接
而不是
内部连接

谢谢@riggsfully,我已经尝试过了,但仍然得到了非常奇怪的结果。我已经更改了循环,使用$row['user\u name']显示
local\u-aid
中的人员姓名,但我只是将所有用户都放在该表中。我应该从本地援助获得1个用户,并从本地请求者表中获得所有相关记录的计数……Liam,请参阅修改后的答案
SELECT * 
FROM local_requestors 
    INNER JOIN local_aid ON local_requestors.user_scheme=local_aid.scheme_id 
WHERE local_requestors.id = :aid_id