The query below lists all non-nullable columns in a database.
Query
select col.table_schema,
       col.table_name,
       col.column_name,
       col.data_type,
       case when col.numeric_precision is not null
            then col.numeric_precision
         else col.character_maximum_length
         end as max_length,
         col.numeric_scale as precision
from information_schema.columns col
where col.is_nullable = 'NO'
      and col.table_schema != 'INFORMATION_SCHEMA'
order by col.table_schema,
         col.table_name,
         col.column_name;
Columns
- table_schema - name of the table schema
- table_name - name of the table
- column_name - name of the column
- data_type - column data type
- max_length - maximum length of the data type
- precision - For number type the precision indicates the number of significant digits to the right of the decimal point. For other it is null.
Rows
- One row: represents one non-nullable column in a table
- Scope of rows: all non-nullable columns in all tables
- Ordered by: table schema, table name, column name
Sample results
Sample results of non-nullable columns in the SNOWFLAKE_SAMPLE_DATA database.

 
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                 
                                                             
                                                             
                                                             
                                                             
                                                                 
                                                             
                                                             
                                                                 
                                                             
                                                             
                                                             
                                                             Bart Gawrych
                                                                        Bart Gawrych
                                 Snowflake
                                                                Snowflake
                                 SQL Server
                                                                                                SQL Server
                                             Azure SQL Database
                                                                                                Azure SQL Database
                                             Oracle database
                                                                                                Oracle database
                                             Amazon Redshift
                                                                                                Amazon Redshift
                                             IBM Db2
                                                                                                IBM Db2
                                             Teradata
                                                                                                Teradata
                                             PostgreSQL
                                                                                                PostgreSQL
                                             MySQL
                                                                                                MySQL
                                             MariaDB
                                                                                                MariaDB