如何在给定的stall_id的LEFT JOIN上找到tenant_id的MAX值?
$sql = "SELECT * FROM stall s
LEFT JOIN tenant t
ON t.stall_id = s.stall_id
LEFT JOIN rent r
ON r.tenant_id = t.tenant_id AND r.rent_status = 1
WHERE s.stall_id = 1";
答案 0 :(得分:0)
你想要这样吗: -
SELECT * FROM stall s
LEFT JOIN tenant t
ON t.stall_id = s.stall_id
LEFT JOIN rent r
ON r.tenant_id = t.tenant_id AND r.rent_status = 1
WHERE s.stall_id = 1 ORDER BY r.tenant_id desc LIMIT 1
答案 1 :(得分:0)
我认为在这种情况下你不需要使用MAX()
,因为rent_status
字段看起来是一个布尔值(1或0)。这意味着一个简单的INNER JOIN
可以解决问题。
SELECT * FROM `stall` AS s
INNER JOIN rent AS r ON r.stall_id = s.id AND r.rent_status = 1
WHERE s.stall_id = 1