SQL:在同一select语句中使用函数中列的别名

tru*_*ru7 11 sql

我只是想简化一个Select语句:

Select (a+b+c)/3 AS V, MIN((a+b+c)/3) as Min, MAX((a+b+c)/3) as Max from ....
Run Code Online (Sandbox Code Playgroud)

是否有一种干净的方法可以避免在聚合函数中重复该公式(a + b + c)/ 3?

Yve*_* M. 10

SELECT 
  Result/3 AS V, 
  MIN(Result/3) as Min, 
  MAX(Result/3) as Max
FROM
(
  SELECT (a+b+c) AS Result from Table
) AS outerTable
Run Code Online (Sandbox Code Playgroud)

甚至

SELECT 
  Result AS V, 
  MIN(Result) as Min, 
  MAX(Result) as Max
FROM
(
  SELECT (a+b+c)/3 AS Result from Table
) AS outerTable
Run Code Online (Sandbox Code Playgroud)

  • 我想知道未来的SQL标准可以支持**在同一个选择列表中使用别名以避免子查询** (3认同)