黑马程序员技术交流社区

标题: 查询语句的问题? [打印本页]

作者: anyu    时间: 2012-11-10 18:52
标题: 查询语句的问题?
本帖最后由 anyu 于 2012-11-11 12:37 编辑

每次写Sql查询语句时,为了省事,都写select * from 表,但是都建议我写成需要某列就只查询某列,select 列名 from 表,为什么?
作者: 张静_90    时间: 2012-11-10 19:00
我想一个是为了更清楚表达你的需要,另一个是为了节约空间吧和提高查找的速度吧。
作者: 郑昱曦    时间: 2012-11-10 19:02
本帖最后由 郑昱曦 于 2012-11-10 19:04 编辑

因为数据库在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间,并且*包含所有字段,如果只查询部分字段,这样只会浪费服务器资源
作者: 种生祥    时间: 2012-11-10 19:11
*太浪费了。。。需要什么查什么
作者: 李长波    时间: 2012-11-11 01:52
很简答的道理,假设你是人事经理你是查询一个人的一个特性的时间长还是查询多个特性的时间长!查列表的只索引一个字段!查*是索引所有字段!所以查一个字段的效率高吗!
作者: 魏冬    时间: 2012-11-11 09:47
select * from  【表名】会查询你数据库中所有列,当你只需要 查询某一列的时候 或者 两列的时候,就写select [列名] from [表],




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2