mysql先排序再多表连接查询

本文介绍了一种在MySQL中对多表查询进行排序的方法。通过先对表一和表二分别按menu_level字段进行排序,然后进行左连接,实现了一级菜单和二级菜单的有序关联查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

业务里面经常要对mysql查询的数据进行排序,现在是多表查询的结构进行排序,但是要先排序好了再连表查询。

表一是一级菜单,表二是二级菜单,id均为自增长,表二的paernt_id对应的是表一的id,存在一对多的关系。

现在要求是查询表一关联表二的数据。表一表二均按照自己的menu_level排序。

sql如下:

SELECT
  *
FROM (SELECT *
      FROM main_menu mu
      ORDER BY mu.menu_level ASC) AS m LEFT JOIN (SELECT *
                                                  FROM second_menu s
                                                  ORDER BY s.menu_level ASC) AS sm ON sm.parent_id = m.id

查询结果是:

先排序后连表查询完毕。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值