我有以下查询:
SELECT services.name as Service, services.logo_name as Logo, packages.name as Package
FROM `client_services`
INNER JOIN services ON service_id = services.id
INNER JOIN packages ON packages.id = package_id
WHERE client_id = 1
ORDER BY services.sort_id
在 client_services 中,我有 5 个结果需要显示。其中 2 个对于 package_id 为 NULL。当我运行查询时,它只显示 3 个结果,即设置了 package_id 的结果。
如果没有包裹,我只想让它显示空白,但其余信息很重要,所以我仍然需要显示记录。
我是否需要更改查询中的任何内容才能使其正常工作?
谢谢!
最佳答案
换一行:
LEFT JOIN packages ON packages.id = package_id
关于MySQL 在查询中显示空结果 - 使用 INNER JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8014631/