作者grence (多想两分钟 = =")
看板Database
标题Re: [SQL ] Select问题
时间Fri May 21 01:54:18 2010
※ 引述《BadNanEpi (Different...)》之铭言:
: 当使用select指令去选择资料读取时, 该行资料的资料量大小是否会影响到搜寻速度?
: (资料库类型目前暂时使用Access或SQL, Access使用在单机版的小程式)
: Ex:
: 表1
: 资料表 User
: 栏位:ID, Name, Pic
: 表2
: 资料表 User
: 栏位:ID, Name
: 同样使用 "Select from User where ID = xxx" 指令时
假设你要说的是 Select * ...
: 表2的速度是否会比表2快上许多?
假设你要说的是表2比表1快上许多
: (假设资料数量同样约为1万笔的情形之下~差别在每笔资料的资料大小)
: 感谢..Orz
你有实际测过吗?
有几个大概的规则,要详解去翻书比较实在或自己作实验胜过别人(我)空谈
1. 没建索引的栏位丢进 where子句会慢;主键会自动建索引
2. Pic,应该是 binary之类的型态,它会慢,主要在於档案进 DB要做一次资料转换,
出 DB又要再转回去
3. 虽然在 DB里 SELECT * ...很方便,
但通常三层式架构会从 DB捞资料出来丢到网页伺服器(AP),处理完再送到client
身为源头的 DB如果捞了不必要的资料(栏位),後面的也要跟着丢这些没用的资料
4. 追求效率没有止境。
如果工作要你从烂机器榨出最後一滴资源,那就是磨链自己的时候了…
如果已经堪用,那就去看看其他新玩意儿吧。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.194.120.196
1F:推 wxyy:第四点心得说的真好....(Y) 05/21 14:12