SELECT * FROM
做一个table_name 比做有很大的性能影响SELECT specific_columns FROM table_name
吗?
问问题
800 次
3 回答
1
是的,它会影响性能,尤其是当您选择多行时。仅选择您真正需要的字段。
让我们以一个简单的用户名存在性检查为例:
当您只能选择 ID 时,为什么要选择所有内容?两者都做这项工作,但只选择一个领域是更好的解决方案。
SELECT `id` FROM users WHERE `username` = 'Nikola K.'
而不是:
SELECT * FROM users WHERE `username` = 'Nikola K.'
于 2012-07-24T21:40:23.827 回答
0
我建议使用 EXPLAIN 来找到适合您需求的最佳方法。我想这取决于你的表中有多少列。
以下是一些关于 MySQL Explain 的有用站点:
http://dev.mysql.com/doc/refman/5.0/en/explain.html
于 2012-07-24T21:38:04.723 回答
0
只选择你需要的!在开发时我使用*
它,因为当我真的不知道我需要什么时它会更容易,但在最终版本中你真的应该具体。为什么不?
于 2012-07-24T21:39:44.553 回答