首先,其實select 字段1,字段2...字段N from tb_name語句是select * from tb_name的優化。
1、執行效率。做一個實驗
select top 10000 gid,fariqi,reader,title from tgongwen order by gid desc (按照降序搜尋tb_gongwen 前10000行的對應字段)
用時:4673毫秒
select top 10000 gid,fariqi,title from tgongwen order by gid desc
用時:1376毫秒
select top 10000 gid,fariqi from tgongwen order by gid desc
用時:80毫秒
由此看來,我們每少提取一個字段,資料的提取速度就會有相應的提升。提升的速度還要看您舍棄的字段的大小來判斷。那麼select*是搜尋所有字段,他會浪費多少時間呢???
2、系統資源的占用
select * 獲得表中所有字段值所占用的資源将毫無疑問的大于後者。
3、可維護性
select 字段1,字段2 from tb_name明顯維護性高于select * from tb_name;可以根據需求進行增删字段。