Я получаю следующее сообщение об ошибке, когда пытаюсь заменить null
на zero
.
Имя столбца «jan», указанное в операторе PIVOT, конфликтует с существующим именем столбца в аргументе PIVOT.
Запрос ниже:
select * from(select isnull(jan,0),isnull(feb,0),sum(data) as amount )as p
pivot(
sum(amount) for month in(jan,feb)) as piv
WITH
помогает вам построить запрос и выполнить всю нулевую логику (в вашем случае), которую затем можно использовать во второй части запроса без необходимости выполнять какие-либо манипуляции с данными. Если вам интересно, вот дополнительная информация об использованииCTE
на сервере sql. simple-talk.com/sql/t -sql-programming/sql-server-cte-basics 22.06.2015