Exibir colunas com todos as linhas NULL em uma tabela.

Este é um pedaço mais simplificado do post Exibir todas as colunas com valores NULL de um banco de dados

Na verdade quanto montava a Query do outro post, fiz alguns testes somente com uma tabela.

Destes testes saiu o código abaixo.

USE nome_do_seu_banco_de_dados;
DECLARE @col varchar(255), @cmd varchar(max)
DECLARE GetInfoColumns CURSOR FOR
	SELECT c.name FROM sys.tables t JOIN sys.columns c ON t.Object_ID = c.Object_ID WHERE t.Name = 'Album'
OPEN GetInfoColumns
FETCH NEXT FROM GetInfoColumns INTO @col
WHILE @@FETCH_STATUS = 0
	BEGIN
		SELECT @cmd = 'IF NOT EXISTS (SELECT top 1 * FROM Album WHERE [' + @col + '] IS NOT NULL) BEGIN print ''' + @col + ''' end'
		EXEC(@cmd)
		FETCH NEXT FROM GetInfoColumns INTO @col
	END
CLOSE GetInfoColumns
DEALLOCATE GetInfoColumns

Duvidas, dicas e sugestões. Por favor entre em contato: leandrolt@gmail.com

Leave a Reply

Your email address will not be published. Required fields are marked *