SQL JOIN 5 個 TABLE 該如何寫得好一些??

如果用laravel 的ORM 是不是可以寫得簡化及好維護一點??

不用ORM該怎麼寫??

試過把lastreply* 那3行寫到left join (subquery), 但subquery不能用order by, 拿不到正確資料

select shares.*,
users.username, users.email,
categories.name as cat_name,
(select count(*) from share_like where share_like.share_id = shares.id) as likes,
(select count(*) from comments where comments.share_id = shares.id) as comments_count,
(select comments.created_at
   from comments
   where comments.share_id = shares.id
   order by comments.created_at desc
   limit 1) as last_reply,
(select users.email
   from users
   left join comments
   on comments.user_id = users.id
   where comments.share_id = shares.id
   order by comments.created_at desc
   limit 1) as last_reply_email,
(select users.username
   from users
   left join comments
   on comments.user_id = users.id
   where comments.share_id = shares.id
   order by comments.created_at desc
   limit 1) as last_reply_username
from shares
inner join users
on users.id = shares.user_id
inner join categories
on categories.id = shares.cat_id
order by shares.created_at desc
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!