SQL查詢速度 五百裡加急帖子!!

船员 2012-03-14 03:23:43
[size=12px]我有一個table table_name is a ,a裡面的資料有100w+

select * from a where lanwei1='xxx'


查出來能有3k+資料吧,但是查詢速度太慢了 要30s+,請問有什麽辦法能讓查詢速度快嗎?

(lanwei1加Index沒什麽用,加完速度一樣慢沒什麽大變化.)
[/size]
...全文
80 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
船员 2012-03-15
  • 打赏
  • 举报
回复
其实建立索引是很有用的,但是我这个人FileTypeID的栏位条件查询出来有10w来笔,所以还慢/.
xiyushuo 2012-03-14
  • 打赏
  • 举报
回复
你的表里是不是有很多索引,如果是很多索引,查询时指定索引
sd722522 2012-03-14
  • 打赏
  • 举报
回复
不会啊 我查20W+数据都用不上10秒
ILOVE_ASPNET 2012-03-14
  • 打赏
  • 举报
回复
加索引肯定是有用的,我们公司订单表里面最少都是几百W+的数据量,而且字段还超多,一下查个几千条数据也就10-20秒的事情呢,你看看是不是索引没创建对
船员 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhaowenzhong 的回复:]
SQL code

加上索引后,查询你需要的数据(加包含索引),不要用 * 号。
包含索引格式: CREATE NONCLUSTERED INDEX idx ON tab
(
lanwei1 ASC
)
INCLUDE (address)
[/Quote]
感覺還是得加索引,不過我沒找到具體怎么加索引能快..
船员 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 dawugui 的回复:]
引用楼主 wanghao_china 的回复:
我有一個table table_name is a ,a裡面的資料有100w+

select * from a where lanwei1='xxx'


查出來能有3k+資料吧,但是查詢速度太慢了 要30s+,請問有什麽辦法能讓查詢速度快嗎?

(lanwei1加Index沒什麽用,加完速度一樣慢沒什麽大變化.)

100W以……
[/Quote]
恩,但是這只是一條查詢語句,還有好幾條呢,寫在一起的,查詢的時候就會導致web頁面TimeOut了.
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wanghao_china 的回复:]

引用 4 楼 travylee 的回复:
改写sql吧,select *什么的,最不爽

恩 我就是舉個例子啊,我從來不寫 select * 的.
[/Quote]
船员 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 travylee 的回复:]
改写sql吧,select *什么的,最不爽
[/Quote]
恩 我就是舉個例子啊,我從來不寫 select * 的.
dawugui 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用楼主 wanghao_china 的回复:]
我有一個table table_name is a ,a裡面的資料有100w+

select * from a where lanwei1='xxx'


查出來能有3k+資料吧,但是查詢速度太慢了 要30s+,請問有什麽辦法能讓查詢速度快嗎?

(lanwei1加Index沒什麽用,加完速度一樣慢沒什麽大變化.)

[/Quote]
100W以上的记录,如果查询的是字符串,其查询时间在30S应该是正常的,稍微有点长而已.
Felixzhaowenzhong 2012-03-14
  • 打赏
  • 举报
回复
加上索引后,查询你需要的数据(加包含索引),不要用 * 号。
包含索引格式: CREATE NONCLUSTERED INDEX idx ON tab
(
lanwei1 ASC
)
INCLUDE (address)
  • 打赏
  • 举报
回复
改写sql吧,select *什么的,最不爽
船员 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 travylee 的回复:]
引用楼主 wanghao_china 的回复:
我有一個table table_name is a ,a裡面的資料有100w+

select * from a where lanwei1='xxx'


查出來能有3k+資料吧,但是查詢速度太慢了 要30s+,請問有什麽辦法能讓查詢速度快嗎?

(lanwei1加Index沒什麽用,加完速度一樣慢沒什麽大變化.)


加了索……
[/Quote]
會的啊,一開始我也不相信的,但是實際加了真沒什麽用啊 頂多快2s
  • 打赏
  • 举报
回复
[Quote=引用楼主 wanghao_china 的回复:]
我有一個table table_name is a ,a裡面的資料有100w+

select * from a where lanwei1='xxx'


查出來能有3k+資料吧,但是查詢速度太慢了 要30s+,請問有什麽辦法能讓查詢速度快嗎?

(lanwei1加Index沒什麽用,加完速度一樣慢沒什麽大變化.)

[/Quote]

加了索引没什么用??不会吧
dawugui 2012-03-14
  • 打赏
  • 举报
回复
对lanwei1建立索引.然后再查询.

34,576

社区成员

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

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