php - 同一张表输出多个左关节

标签 php mysql pdo

所以我有一个表,其中有 2 个字段引用另一个表中的 sponsorID。我需要从其他表的两个字段中提取 nickname

accounts table
sponsorID Nickname
   1        Rob
   2        Mark

tables table
ID sponsorID1 sponsorID2
1       1        2

我需要使用 sponsorID1sponsorID2 提取昵称。到目前为止我所做的是

$conn = new PDO('mysql:host=localhost;dbname=helpinghands', 'root', '');
$table = $conn->query("SELECT a.l1_1 as lv1_1, a2.l2_1 as lv2_1 FROM tables LEFT JOIN accounts AS a ON tables.l1_1=a.sponsorID LEFT JOIN accounts AS a2 ON tables.l2_1=a2.sponsorID");
for ($t in $table) {
echo $nickname1 = $t['??'];
echo $nickname2 = $t['??'];
}

我不知道如何进行正确的查询。它只是向我显示一个空白页。任何帮助将不胜感激。

最佳答案

我已经让它按如下方式工作:

SELECT t.ID, a1.nickname, a2.nickname
FROM tables AS t
    LEFT JOIN accounts AS a1 ON t.sponsorID1 = a1.sponsorID
    LEFT JOIN accounts AS a2 ON t.sponsorID2 = a2.sponsorID;

关于php - 同一张表输出多个左关节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31258322/

相关文章:

mysql - 如何从两个查询中只返回一个查询结果

PHP MySQL 登录时不返回 1

python - 如何更改 mySQL 查询结果中的一行?

php - 如何使用 PHP 连接 sqlite 数据库?

key 大小的 C# 和 PHP 加密/解密 php 问题

php - 如何获得Steam公钥?

php - 为什么这个 PDO 语句会默默地失败?

php - 如何在 php 中的同一页面上显示错误消息

php - laravel 表单请求 = 如果按钮被点击

javascript - 我将如何制作自链接 <div>?