У меня возникла проблема, проходящая через столбец за столбцом и получающая количество всех ненулевых значений в каждом столбце. Я думаю, что проблема заключается в том, как я получаю имена столбцов. В последнем предложении select, где я пытаюсь выбрать все значения в каждом столбце, я просто получаю имя столбца столько раз, сколько строк. Любая идея о том, как это исправить?Выделить все ненулевые значения из всех столбцов в таблице
DECLARE @cnt INT = 1;
WHILE @cnt < (SELECT COUNT(*)
FROM mySchema.INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tblName') + 1
BEGIN
DECLARE @column varchar(9) = (select column_name
FROM mySchema.INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tblName'
AND ordinal_position = @cnt);
SELECT @column
FROM [mySchema].[dbo].[tblName]
WHERE @column is not null
AND @column <> ''
SET @cnt = @cnt + 1;
END;
Это работает отлично, спасибо. Хороший способ заставить Exec работать. – Shawn