我有一个有效的 SQL 查询,但为了便于使用,我需要从查询中的第三个表中获取另一条数据,但一直无法获取它。
每个表基本上都由 tenant_id
绑定(bind)在一起
(我为糟糕的结构道歉,我没有创建数据库)
表:tenant_statements
tenant_id 余额 属性(property) 日期
表:租赁
lease_id tenant_id property unit_number
表:租户
tenant_id 名字 姓氏 global_comment
我当前的查询:
SELECT *
FROM tenant_statements t
INNER JOIN (
SELECT *
FROM leases
GROUP BY tenant_id
ORDER BY lease_id
)l ON t.tenant_id = l.tenant_id
WHERE t.date = '$date'
AND t.property = '$property'
ORDER BY t.balance DESC
这为我提供了加入两个表的适当响应:leases
和 tenant_statements
。 $date
和 $property
通过 PHP 变量循环设置并用于演示。
我试图做的也是抓取 tenants.global_comment
并添加每个结果。
理想的输出将是:
tenant_statements t: t.balance, t.date
租约 l: l.property, l.unit_number
租户 x:x.first_name、x.last_name、x.global_comment
全部在一个查询中。
谁能指出我正确的方向?谢谢!
最佳答案
怎么样
SELECT *
FROM tenant_statements t INNER JOIN
(
SELECT *
FROM leases
GROUP BY tenant_id
ORDER BY lease_id
)l ON t.tenant_id = l.tenant_id INNER JOIN
tenants ts ON t.tenant_id = ts.tenant_id
WHERE t.date = '$date'
AND t.property = '$property'
ORDER BY t.balance DESC
关于mysql - 连接三个 SQL 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17850031/