查询速度问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

newmcz 2003-03-24 10:09:11
有三个表做关联查询
三个表都有十万记录一上,table1 三十万,最多

table1.sss_id ,table2.xx_id是主键,
select * from table1,table2,table3 where table1.sss_id=table2.sss_id
and table3.xx_id= table2.xx_id

select * form table1 inner join table2 on table1.sss_id=table2.sss_id
inner join table3 on table3.xx_id= table2.xx_id

在管理器里执行要6秒,在查询分析器里要20多秒
那个能查的快点,当然实际操作的时候会选几个字段,不会查全部内容,
还有没有更好的方法,

...全文
50 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
newmcz 2003-03-24
  • 打赏
  • 举报
回复
table1表sss_id 索引
table2表xx_id 索引

select * form table1 inner join table2 on table1.sss_id=table2.sss_id
inner join table3 on table3.xx_id= table2.xx_id
感觉不是很快

愉快的登山者 2003-03-24
  • 打赏
  • 举报
回复
1。对三个表建立索引:
table1:sss_id
table2:sss_id, xx_id
table3:xx_id
2。用:
select * form table1 inner join table2 on table1.sss_id=table2.sss_id
inner join table3 on table3.xx_id= table2.xx_id

happydreamer 2003-03-24
  • 打赏
  • 举报
回复
你建立索引了么,把查询放在索引字段上,不要用*
饮水需思源 2003-03-24
  • 打赏
  • 举报
回复
先不用*,写上字段名试试

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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