У меня проблема и не могу ее решить. Кроме того, я не могу найти ответ в любом месте в Интернете.TSQL: как добавить автоматически выбрать столбцы
Упрощенные У меня есть большой стол с coloumns, где значения для продуктов с идентификатором хранящимися в году:
- года
- ID
- значение
В моей хранимой процедуре атрибутами для получения информации являются:
- @Year
- @Id
Если вы хотите получить информацию о более чем одном продукте, вы можете использовать запятые отделено список продуктов идентификаторов типа («654654,543543,987987»).
Моего TSQL должен быть такой:
select year,
sum(case when id = @id[1] then value),
sum(case when id = @id[2] then value),
[...]
from table myTable
where year = @year
group by year
order by year
То, что я хочу сделать, это итерация Повсеместно запятая-отделенны идентификаторы и для каждого идентификатора, я хочу, чтобы добавить новый выберите attribut, как это (сумма (случай когда идентификатор = @id [х], то значение).
Можете ли вы помочь мне с этим проблемы? Любые предложения, чтобы решить это ?!
Спасибо за вашу помощь!
Рассмотрим, используя табличное значение параметра вместо запятой списке. Кроме того, вы должны стремиться вернуть результаты в другом формате (результаты PIVOT не хороши в динамике, они также нуждаются в фиксированном числе столбцов!). Оставьте бит pivot-y в своем интерфейсе. – gvee