在select for derived表中提及列名

时间:2013-03-28 11:43:36

标签: tsql

我怀疑,

select *   
from  
(  
     select *  
     (  
         select User_Id,User_Name,Password  
         from <table> T  
         where  IsActive = 1  
     ) k   
) m

在这种情况下,是否需要在其他2个选择语句中提及列名

提及列始终比保持*

更好

但是,当我们从派生表中选择列时,实际上在前2个选项中的用途是什么..

1 个答案:

答案 0 :(得分:0)

无需提及每列而不是SELECT * FROM。但是,如果您不需要所有列,则只需选择所需的列即可进行优化:SELECT a, b, c FROM

在没有任何计算的情况下,有两个嵌套SELECT *没有增值或优化。这是关于Transact-SQL Derived Tables的文章,我建议您查看 SQL派生表的优点部分。那里有一个很好的例子。