多个left join
时间: 2023-09-23 13:08:12 浏览: 82
mysql多个left join连接查询用法分析
在Java开发的规范手册中明确提到,最多不得超过3个Left Join表。在某些情况下,我们需要进行多个Left Join来满足特定的业务需求。其中一个案例是在使用Security安全权限框架时,需要将用户、角色和权限查询出来放入缓存以进行权限检验。此外,还需要查询用户的部门和岗位,这些查询都需要进行Left Join操作。因此,出现了优先添加索引的方法。但是我们也可以提供一些优化多个Left Join的思路。
首先,可以使用左表作为基准,右表作为关联,查不到的返回NULL的方式进行Left Join查询。例如,User表左连接Dept表,User表有10条数据,而Dept表只有5条数据。
另外,还可以使用查询算法来优化多个Left Join的操作。例如,将多个Left Join操作合并成一个较低的查询级别。举个简单的例子,比如...Left Join LEFT JOIN fk_menu m。
总之,多个Left Join可以根据具体的业务需求进行优化。可以根据左表和右表的关系选择合适的查询方式,也可以使用查询算法来减少查询级别。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [从零开始java数据库SQL优化(二):多个LEFT JOIN的SQL优化](https://blog.csdn.net/qq_35755863/article/details/102236637)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文