La syntaxe ne le prend pas en charge dans les formulaires CREATE ou ALTER tels qu'ils sont aujourd'hui. Je suppose, mais comme l'instruction CREATE MATERIALIZED VIEW accepte n'importe quelle requête, elle ne peut pas copier de manière fiable les contraintes non nulles de la table référencée.
Vous pouvez cependant METTRE À JOUR le pg_catalog.pg_attribute lui-même pour faire ce que vous voulez.
UPDATE pg_catalog.pg_attribute
SET attnotnull = true
WHERE attrelid = the_oid_of_the_published_at_column;