【 TiDB 使用环境】所有环境
【 TiDB 版本】
【复现路径】加上or之后子查询变慢,执行计划发生改变,有什么方法在两个or不合并的情况下优化or吗,因为or是根据角色权限配置拼接的改动不了
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】
另外,加上一个条件查询就非常非常慢,就多了两千条数据为啥会慢这么多
【 TiDB 使用环境】所有环境
【 TiDB 版本】
【复现路径】加上or之后子查询变慢,执行计划发生改变,有什么方法在两个or不合并的情况下优化or吗,因为or是根据角色权限配置拼接的改动不了
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】
拆成2个sql再union试试呢
这用的什么工具,界面好漂亮
or连接可能不会走索引,换成unoin连接试试。虽然查询结果多了两千条数据,但是检索的范围可能多了几千万条,不能仅仅从检索结果来判断
看起来很像 idea
免费的吗
肯定不免费嘛
这种拼语句的为了防止报错一般都会带着1=1,要不没拼出条件的语句会报错
不写or,接着union到上边那个子查询里不就好了
程序动态拼接sql的时候经常这样写,去不掉,根本去不掉~
用where标签应该可以去掉
现在都ORM了,不搞这个了
我就是搞开发的,老实说,不好去掉。
按你这么说,我们比较传统,嘿嘿嘿
相同字段的or可以转换为in,不同字段的or可以使用union all代替,这也是代码底层转换的逻辑
那可以,用个社区版就行
感谢分享
能不能把链接分享一下