关于sql效率.

chinadragon5188 2006-04-30 04:12:19

使用

select * from tb1 结果放到DataSet 中;
select * from tb1 where ID='1' 结果放到DataSet 中


哪个效率高些。谢谢
...全文
137 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
代码蜗牛sky 2006-04-30
  • 打赏
  • 举报
回复
如果把将数据放到DataSet的时间也算进去的话,当然是返回数据条数越少的那个性能越高啦
新鲜鱼排 2006-04-30
  • 打赏
  • 举报
回复
效率??
select * 就不是一个高效率的语句,用什么就选出什么,不要将不需要的查询出来。

如果需要过滤条件,可以使用DataView的Filter.
copine 2006-04-30
  • 打赏
  • 举报
回复
看有没有索引,不考虑数据传输耗费时间,只考虑IO次数的话
还是select * IO次数少一些,会整块地把数据读取出来,假设没有索引的话(当然主键是最好的索引)查询语句可能会导致遍历整个表,随着记录数的增长所耗费时间也会线性增长。至于为什么不用select * 是相对于select columnA,columnB这种方式来说的,如果你以后增加了字段的话,至少会保证的原有的程序不会崩溃。
greatqn 2006-04-30
  • 打赏
  • 举报
回复
ID = 1 快。。

为什么SELECT * 要尽量避免??
gnhao 2006-04-30
  • 打赏
  • 举报
回复
select * from tb1 结果放到DataSet 中;
select * from tb1 where ID='1' 结果放到DataSet 中
呵,记录一条都一样,多条当然第二个好,因为它只返回一条,哈哈,......
Happyboy_zjy 2006-04-30
  • 打赏
  • 举报
回复
ID是主键的话,有效。但是
SELECT* 要尽量避免
Kshatriya 2006-04-30
  • 打赏
  • 举报
回复
一條結果用DataReader,多條結果用DataSet
RUN_ 2006-04-30
  • 打赏
  • 举报
回复
up
baby21st 2006-04-30
  • 打赏
  • 举报
回复
如果你表里中只有一条记录,那两者一样
但表里要是有个十万八千的记录,那就是有分别的,反正不麻烦,自己写段代码看看嘛

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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