如何解决多表连表查询中丢数据问题?
使用leftJoin多表联查,最后select的字段里有一个字段是其中一个右表里count出来的字段,但如果那个表里没有count数据,整个查询会丢掉结果,现在想的是如果查询没有结果则保留左表数据。
大概代码是这样:
SELECT a.name,COUNT(b.id) AS com FROM `a` LEFT JOIN `b` ON `a`.`uid` = `b`.`uid` LEFT JOIN `c` ON `d`.`id` = `c`.`id` ORDER BY `a`.`id` DESC LIMIT 10 OFFSET 0
最后如果b里没有对应数据 则会丢掉查询的数据
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
order by 前面加一个gourp by a.name 试试