0

我想弄清楚如何在 SSMS 中将列平均值作为新字段插入。让我以下表为例:

Style |   Car    | Sales
------|----------|-------
Sedan | Civic    | $100
Sedan | Accord   | $200
SUV   | CR-V     | $150
SUV   | Odyssey  | $150

此表的平均价格为 $150 {AVG(Sales)}

我想知道的是,如何创建一个新视图,将此平均值作为新列插入?视图看起来像这样:

Style |   Car    | Sales | Avg Sales
------|----------|-------|-----------
Sedan | Civic    | $100  | $150
Sedan | Accord   | $200  | $150
SUV   | CR-V     | $150  | $150
SUV   | Odyssey  | $150  | $150

我做了一些重要的搜索,因为我认为这将是一个简单的操作。但是,我只能找到有关如何对平均值进行分组或如何显示平均值的信息。

4

1 回答 1

0

使用窗口函数:

create view myview as
select
    t.*,
    avg(sales) over(partition by style) avg_sales
from mytable t

如果你想要整个表的平均值,那么:

create view myview as
select
    t.*,
    avg(sales) over() avg_sales
from mytable t
于 2020-02-26T16:14:48.870 回答