vacios texto resultados reemplazar por mostrar hay devolver consulta cero campos sql postgresql information-schema

texto - reemplazar null por cero sql



Encontrar columnas que NO sean NULL en PostgreSQL (1)

Tenía una asignación para cada tabla para contar las columnas que aceptan nulos. Fácil:

SELECT table_name, count(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE is_nullable=''NO'' GROUP BY table_name;


Ahora tengo que modificar esto para contar "columnas que tienen la propiedad" NOT NULL "". ¿El siguiente código hará esto o solo verificará que el nombre de la columna del tiempo no sea nulo?

CREATE TEMP TABLE A AS SELECT DISTINCT column_name, table_name AS name FROM INFORMATION_SCHEMA.COLUMNS WHERE column_name IS NOT NULL GROUP BY table_name, column_name; SELECT name, count(*) FROM A GROUP BY name;

Si no ... ¿Algún consejo?


No.

Esta consulta

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

devolverá todas las filas que tengan un valor en la columna "column_name".

Todas las filas en esa tabla siempre tendrán un valor en la columna "column_name".

¿Necesita saber cuántas columnas son anulables y cuántas no admiten nulos?

SELECT is_nullable, COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS GROUP BY is_nullable;

¿Cuenta por nombre de tabla? Creo que puedes usar esto.

SELECT table_name, is_nullable, count(*) FROM INFORMATION_SCHEMA.COLUMNS GROUP BY table_name, is_nullable ORDER BY table_name, is_nullable;