ITPub博客

首页 > IT职业 > IT图书 > 表表达式的派生表例子

表表达式的派生表例子

IT图书 作者:gjfer 时间:2021-09-09 09:45:01 0 删除 编辑

按照SQL的逻辑查询处理顺序,Group BY子句是先于SELECT子句处理。

平时写法(YEAR(birthday)):

SELECT YEAR(birthday) AS [Year], AVG([Salary]) AS [AvgSalary] FROM [dbo].[Member]
GROUP BY YEAR(birthday)

 

只能使用SELECT一样的写法。是否可以在GROUP BY中使用SELECT阶段的名别呢,答案是肯定的。使用派生表,可以实现外部查询的子句都可以引用在内部查询的SELECT子句中分配的列别名。参考重构例子:

SELECT [Year],AVG([Salary]) AS [AvgSalary]
FROM (SELECT YEAR(birthday) AS [Year],[Salary] FROM [dbo].[Member]) AS M
GROUP BY [YEAR]

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3789/viewspace-2806848/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-26

  • 博文量
    0
  • 访问量
    833