PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Encontrando colunas que NÃO são NULL no PostgreSQL


Não.

Esta consulta
SELECT DISTINCT column_name, table_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE column_name IS NOT NULL

retornará todas as linhas que possuem um valor na coluna "column_name".

Todas as linhas dessa tabela sempre terão um valor na coluna "column_name".

Você só precisa saber quantas colunas são anuláveis ​​e quantas não são anuláveis?
SELECT is_nullable, COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY is_nullable;

Contar pelo nome da tabela? Acho que você pode usar isso.
SELECT table_name, is_nullable, count(*)
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY table_name, is_nullable
ORDER BY table_name, is_nullable;