多like的SQL语句优化
select*fromtablewherefacctcode='233[深圳]'andfacctattrlike'投资%'andfacctattrnotlike'%溢折价...
select * from table where facctcode = '233[深圳]'
and facctattr like '投资%'
and facctattr not like '%溢折价%'
and facctattr not like '%估值增值%'
请问这种语句有办法优化么,因为数据库方面用的有sqlserver,oracle,db2
所以尽量使用sql的标准语法,不要用专用的聚合函数等 展开
and facctattr like '投资%'
and facctattr not like '%溢折价%'
and facctattr not like '%估值增值%'
请问这种语句有办法优化么,因为数据库方面用的有sqlserver,oracle,db2
所以尽量使用sql的标准语法,不要用专用的聚合函数等 展开
3个回答
ZESTRON
2024-09-04 广告
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸...
点击进入详情页
本回答由ZESTRON提供
展开全部
select * from table ---不要用* ,用列名,用哪列查那个
where facctcode = '233[深圳]' ---- 可以使用索引,建立索引
and facctattr like '投资%' ------使用索引,建立索引
and facctattr not like '%溢折价%'
and facctattr not like '%估值增值%'
---加时间条件,如果不是全表查询的话,加时间
and (time>'' and time<'' ) --最好是加括号,这样会先执行的
where facctcode = '233[深圳]' ---- 可以使用索引,建立索引
and facctattr like '投资%' ------使用索引,建立索引
and facctattr not like '%溢折价%'
and facctattr not like '%估值增值%'
---加时间条件,如果不是全表查询的话,加时间
and (time>'' and time<'' ) --最好是加括号,这样会先执行的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
与其研究 LIKE '%' 的优化方法不如在可能的范围内调整你数据库结构。结构设计上的重大缺陷没办法用优化语句弥补
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询