SQL 大佬来救命

2023-05-22 14:36:04 +08:00
 0x19921213
select * from 
(select rownum as xh, t.* from 
(
	select * from (
	SELECT
			* 
		FROM
			q_materialfusion 
			
			where sjbj = '0' 
			and ( instr(mc, '1') > 0 
			OR instr(ssxmmc, '1') > 0 
		  OR instr(ssxtzc, '1') > 0
	    OR instr(xinghao, '1') > 0
      OR instr(gg, '1') > 0)
			order by nf desc, mc asc
	) where  rownum < 501
) t) where  xh >= 1;

这段 SQL 有优化空间吗,数据 200W ,返回需要 2 秒。

5677 次点击
所在节点    程序员
66 条回复
ImSealin
2023-05-23 17:15:44 +08:00
下班前看到这个 SQL 我血压也上来了..
JKeita
2023-05-23 17:23:52 +08:00
看到这 SQL 真是会脑溢血
lff0305
2023-05-23 21:23:55 +08:00
Oracle 这个版本能创建(或者环境允许创建) instr 的函数索引么,试试函数索引
chonanlee
2023-05-23 22:50:32 +08:00
加个字段,建个 Oracle 的 trigger ,更新或者新增的时候用 trigger 去更新新加的字段
liuhuan475
2023-05-24 11:10:17 +08:00
不能改表结构 能不能新建表啊
ruanimal
2023-05-24 14:16:29 +08:00
@vipdog73 看了贴 ai 图的,血压更高了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/941922

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX