可能重复:
Which is faster/best? SELECT * or SELECT column1, colum2, column3, etc
执行SELECT * FROM
table_name比执行SELECT specific_columns FROM table_name
会对性能产生重大影响吗?
答案 0 :(得分:1)
是的,它会影响性能,特别是当您选择多行时。 只选择您真正需要的字段。
我们以一个简单的用户名存在检查为例:
为什么要选择所有内容,何时只能选择ID?两者都在做,但只选择一个字段是更好的解决方案。
SELECT `id` FROM users WHERE `username` = 'Nikola K.'
而不是:
SELECT * FROM users WHERE `username` = 'Nikola K.'
答案 1 :(得分:0)
我建议使用EXPLAIN找到最适合您需求的方法。我想这取决于你的表中有多少列。
以下是MySQL Explain的一些有用网站:
http://dev.mysql.com/doc/refman/5.0/en/explain.html
答案 2 :(得分:0)
只选择您需要的东西!在开发中我使用*
因为当我不知道我需要什么时会更容易,但在最终版本中你真的应该具体。为什么不呢?