继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

表表达式的派生表例子

远看寒山石径斜
关注TA
已关注
手记 268
粉丝 25
获赞 149

按照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]

 

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP