El contrato habitual es:
NULL
significa "no hay información disponible".''
significa "hay información disponible. Simplemente está vacía".
Más allá de este punto, hay mucha discusión filosófica desde la invención de NULL
en cualquier idioma, no solo SQL.
El único punto técnico aquí es:En PostgreSQL NULL
se puede almacenar de manera más eficiente que una cadena de longitud cero. Si eso realmente importa en su caso... no podemos saberlo.