如果我的mySQL表有10个字段,我只需要检索某些字段的值,建议使用
SELECT field1, field2, field3 FROM...
而不是
SELECT * FROM...
我的意思是,如果我使用[SELECT field1,field2,field3 ....]
,它会更快地帮助检索/脚本执行答案 0 :(得分:0)
是的,如果您只想在表格中选择少量字段,最好选择它们而不是拉回所有字段。差异并不大,但针对每一次优化,它可能会有所帮助。
如果你有一个包含20个左右字段的表,并且想要18个字段,那么只需要*
就可以更容易/更整理这些字段。
修改强>
有关详细信息,请参阅this问题。
答案 1 :(得分:0)
是的,您应该只查询您需要的那些字段,因为不需要的字段将占用网络资源(从数据库服务器传输到后端服务器)和内存。
答案 2 :(得分:0)
是的,你应该总是根据一些使用SELECT field1, field2, field3...
表格。
*
含糊不清,我发现只是自动选择表格中的每一列都是懒惰的,尽管我经常使用它。
从优化的角度来看,您应该只选择您计划使用的字段。如果您明确知道正在检索哪些数据,它可能会使调试更加清晰。
答案 3 :(得分:0)
如果您使用table
6800
条记录查询23 Columns
使用*
,在返回记录中花费了0.0009 Sec
5 Columns
的同一查询平均0.0005 Sec
在Dual Core Machine 2GB RAM
,Windows 7
和Phpmyadmin
<强>结论强>
始终建议使用必填字段,尽管*
速度优先