Сложите сумму всех столбцов по часам
У меня есть два стола, список гостей и список клиентов. Я присоединился к ним и использовал динамическую сводную таблицу SQL для преобразования столбца "город" из таблицы GuestList в строки или заголовки таблиц, и среднее население будет отображаться под каждым городом. Таким образом, после выполнения запроса внизу моя таблица выглядит следующим образом, и среднее население отображается под каждым городом.
Time | Atl_1 | Atl_2 | Atl_3 | NY_1 | NY_2 02/12 | 300 |120 |550 | 548 | 784 02/12 | 140 |100 |720 | 369 | 985
У меня также есть возможность суммировать все население городов в ASP.Net-да. Так как же мне сложить все общее население городов и показать вот так?
Примечание: название моего города будет динамичным. Таким образом, пользователь может выбрать любой город из ASP.Чистая опция выпадающего списка, поэтому сумма также должна быть динамической, а не добавляться вручную для каждого города, так как мы не знаем, какой город пользователь собирается выбрать.
Time | Atl_ALL | NY_ALL 02/12 |970 |1332 02/13 | 960 |1354
Что я уже пробовал:
Ниже приведен динамический sql-запрос:
declare @ColumnNames nvarchar(max) = '' declare @SQL nvarchar(max) = '' select @ColumnNames += QUOTENAME(a.address) + ',' from GuestList as a inner join CustomerList as b on a.Id = b.Id group by a.address order by a.address set @ColumnNames = left(@ColumnNames, LEN(@ColumnNames)-1 ) set @SQL= N' select Time,' + @ColumnNames + ' from ( select a.Time, a.city, a.population, b.Gender from GuestList as a inner join CustomerList as b on a.Id = b.Id inner join Split(@city, '','') as c on a.city = c.Data where a.city = c.Data ) as SourceTable pivot (avg(population) for city in (' + @ColumnNames + ')) as PivotTable order by Time' execute sp_executesql @SQL, N'@city nvarchar(max)' ,@city = @city
RedDk
цитата: "Я присоединился к ним"...
Таким образом, эти цифры являются суммами для каждого (столбца) "адреса"?
А клиенты-это то же самое, что и гости? Я не понимаю.
Member 13863605
Ну, это ты пытаешься все усложнить! Это t-sql, а не английская литература, в которой вы пытаетесь сказать, что клиенты-это то же самое, что и гости. Я ясно сказал, что это разные таблицы!!!
Santosh kumar Pithani
Почему вы используете "a.address" и "a.city" для списка сводных столбцов ?