可能重複:
Which is faster/best? SELECT * or SELECT column1, colum2, column3, etcSELECT *或選擇特定的列
有沒有這樣做不是做SELECT specific_columns FROM table_name
一個SELECT * FROM
table_name的一個大的性能影響?
可能重複:
Which is faster/best? SELECT * or SELECT column1, colum2, column3, etcSELECT *或選擇特定的列
有沒有這樣做不是做SELECT specific_columns FROM table_name
一個SELECT * FROM
table_name的一個大的性能影響?
我會建議使用EXPLAIN來找到最適合您需要的方法。我想這取決於你在表格中有多少列。
以下是MySQL的一些有用的網站解釋:
http://dev.mysql.com/doc/refman/5.0/en/explain.html
只有在特定情況下,'EXPLAIN'纔會有所不同。所以*一般*'EXPLAIN'對於兩者都是相同的 – zerkms 2012-07-24 21:40:55
只選擇你需要的東西!在開發過程中,我使用*
,因爲當我不知道我需要什麼時它更容易,但在最終版本中,您應該具體。爲什麼不?
是的,它會影響性能,尤其是當您選擇多行時。 只選擇你真正需要的領域。
讓我們來簡單的用戶名所有腦幹檢查爲例:
爲什麼你會選擇一切,當你只能選擇ID?做這份工作,但只選擇一個領域是更好的解決方案。
SELECT `id` FROM users WHERE `username` = 'Nikola K.'
而不是:
SELECT * FROM users WHERE `username` = 'Nikola K.'
不久的說,是的,有。聽你的長輩......:P – xandercoded 2012-07-24 21:36:46
SELECT關鍵字後的列表選擇**列**而不是行。 – 2012-07-24 21:37:37
在大多數情況下,沒有明顯的區別(即使很多人認爲它存在) – zerkms 2012-07-24 21:37:49