【求助】多个or条件的查询

gong_max 2009-05-21 04:57:44
有这样一条查询语句,t_2的值总共有10中可能。

SELECT t_1 FROM table_A WHERE t_2 = -1 OR t_2 = -2 OR t_2 = 20 OR t_2 = 21 OR t_2 = -3;
他执行的是全表扫描,我把其改成下面这条语句:SELECT t_1FROM table_A WHERE f_sfpro in (1,-2,20,31,-3)
速度能快一点。

有没有更好的方法,请教大家
...全文
131 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
william3033 2009-05-22
  • 打赏
  • 举报
回复
n多高手,偶来学习,接点分,呵呵。
rockywu 2009-05-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fuyou001 的回复:]
t2仅有10种值
你可以在t2上建位图索引,如果只是查询的话!
[/Quote]
如果t2值较少,建立位图索引.
gong_max 2009-05-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fuyou001 的回复:]
t2仅有10种值
你可以在t2上建位图索引,如果只是查询的话!
[/Quote]
多谢,我先尝试一下
lqb2008 2009-05-21
  • 打赏
  • 举报
回复
索引+in
fuyou001 2009-05-21
  • 打赏
  • 举报
回复
t2仅有10种值
你可以在t2上建位图索引,如果只是查询的话!

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧