douchen9855 2015-09-14 14:26
浏览 484
已采纳

使用LEFT JOIN进行Mysql查询并从另一个表中获取OrderID的数量...坚持

This is my current query and it's working fine as I expect it.

SELECT a.ID, a.CreatedDate, a.Status, b.OrderTotal, 
    e.Rate, f.RouteType, f.Code, g.Country, h.Network 
    from orders AS a
     LEFT JOIN order_details AS b ON a.ID = b.OrderID
     LEFT JOIN order_routes AS d ON a.ID = d.OrderID
     LEFT JOIN userrate AS e ON e.ID = d.RouteID
     LEFT JOIN ratelist AS f ON f.ID = e.RateListID
     LEFT JOIN country AS g ON f.CountryID = g.ID
     LEFT JOIN network AS h ON f.NetworkID = h.ID
     WHERE a.UserID = 16 ORDER BY a.CreatedDate DESC

However now I am trying to add another column which shows me count of appearances of each OrderID from order_routes

My order routes look like this right now

ID   OrderID   RouterID
1      1         1
2      1         2
3      2         2
4      2         3
5      2         5

So I want column which shows me how many appearances OrderID have in order_routes table.

I think I need sub query inside my query but when I try that it giving me error. To let you know

a.ID = d.OrderID

e.ID = d.RouteID

Please help.

  • 写回答

1条回答 默认 最新

  • dua6992 2015-09-14 14:33
    关注

    try this

    SELECT a.ID, a.CreatedDate, a.Status, b.OrderTotal, 
        e.Rate, f.RouteType, f.Code, g.Country, h.Network, d2.cnt AS OrderCount 
    FROM orders AS a
        LEFT JOIN order_details AS b ON a.ID = b.OrderID
        LEFT JOIN order_routes AS d ON a.ID = d.OrderID
        LEFT JOIN (SELECT OrderID as OrderID2, COUNT(*) AS cnt FROM order_routes GROUP BY 1) AS d2 ON a.ID = d2.OrderID2
        LEFT JOIN userrate AS e ON e.ID = d.RouteID
        LEFT JOIN ratelist AS f ON f.ID = e.RateListID
        LEFT JOIN country AS g ON f.CountryID = g.ID
        LEFT JOIN network AS h ON f.NetworkID = h.ID
        WHERE a.UserID = 16 ORDER BY a.CreatedDate DESC
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办
  • ¥15 vue2登录调用后端接口如何实现