SQL优化
wanghan1977
这个作者很懒,什么都没留下…
展开
-
如何让空或者Null得字段在排序中排到后面
order by case when dorder is null or dorder = '' then 1 else 0 end, dorder比如dorder是排序字段,让这个字段作为空或非空做第一排序字段,然后在用作普通排序,这样就可以把空值排到后面了原创 2020-12-16 15:42:08 · 1662 阅读 · 0 评论 -
优化分页插件pagehelper
使用mybatis+pagehelper过程中,发现pagehelper中自动生成的count语句性能很差,直接在现在查询外面套了一个count查询,跟踪源代码后定位到生成count的判断处(CountSqlParser.java):/** * 将sql转换为count查询 * * @param select */public void sqlToCount(Select select) { SelectBody selectBody = select.getSelectBody()原创 2020-05-25 09:26:25 · 594 阅读 · 0 评论 -
将既存的1对多改造为多对多的数据结构方法
原主从表为1对多关系A为主表,B为从表,查询语句如下:SELECT * FROM B b LEFT JOIN A a ON b.parent_id = a.id由于业务调整,A与B转化为多对多关系1. 建立A与B的关联关系表CREATE TABLE a_b_relation( a_id VARCHAR(40), b_id VARCHAR(40) ...原创 2020-04-16 10:37:48 · 496 阅读 · 0 评论