Сколько раз за последний месяц мне приходилось заменять 'пустые' поля на '0' для каждого столбца, возвращаемого из запроса.
, чтобы сэкономить много времени (некоторые из них возвращают большое количество столбцов). Я использовал следующее, а затем вставил результаты для соответствующих столбцов в новый запрос:
select ', isnull(' + COLUMN_NAME + ', 0)' + ' as ' + COLUMN_NAME
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'summary_by_scca_sales_category '
and TABLE_SCHEMA = 'property''
По сути, мне интересно, есть ли лучший способ сделать это? В идеале метод, в котором я мог бы автоматически применять isnull ко всем столбцам, возвращаемым в запросе (без использования двух запросов).
Например:
Я хочу получить запрос вроде:
select *
from tablename
И для каждого столбца, возвращаемого *, замените нулевые результаты на 0 без необходимости писать строку isnull () для каждого столбца.
редактировать :
Достигну этого с целью (до, я должен был подумать об этом). Ради интересов / образования, есть ли способ сделать что-то подобное с помощью кода?