Таблица InterfaceTraffic_detail
(от Solarwinds SQL Server) в основном имеет структуру таблицы:MS SQL Server группа макс
CREATE TABLE [dbo].[InterfaceTraffic_Detail](
[InterfaceID] [int] NOT NULL,
[DateTime] [datetime] NOT NULL,
[In_Maxbps] [real] NULL,
[Out_Maxbps] [real] NULL
CONSTRAINT [PK_InterfaceTraffic_Detail] PRIMARY KEY CLUSTERED
(
[InterfaceID] ASC,
[DateTime] ASC,
[Archive] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY]
) ON [PRIMARY]
GO
данных:
InterfaceID Out_Maxbps In_Maxbps DateTime
------------|-----------|------------|-------------------------|
1 | 10 | 10 | 2015-06-23 01:03
1 | 11 | 11 | 2015-06-23 01:08
2 | 12 | 12 | 2015-06-23 01:05
2 | 10 | 10 | 2015-06-23 01:10
Как я могу group by
InterfaceID
?
select
max(Out_Maxbps) over (partition by itt.InterfaceID),
avg(Out_Maxbps) over (partition by itt.InterfaceID),
max(In_Maxbps) over (partition by itt.InterfaceID),
avg(In_Maxbps) over (partition by itt.InterfaceID),
itt.InterfaceID,
itt.datetime
from InterfaceTraffic_detail as itt with (nolock)
where (itt.DateTime >= '2015-06-23 01:00:00'
and itt.DateTime <= '2015-06-23 05:00:00'
and (itt.InterfaceID = 489108 or itt.InterfaceID = 489109 or itt.InterfaceID = 1220996))
group by itt.InterfaceID
order by itt.InterfaceID asc;
я получаю сообщение об ошибке:
Column 'InterfaceTraffic_detail.Out_Maxbps' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Каков ваш ожидаемый результат? –