List table columns in a database

The query below lists all the table columns in a database.

Query

select schema_name(tab.schema_id) as schema_name,
    tab.name as table_name,
    col.column_id,
    col.name as column_name,
    t.name as data_type,
    col.max_length,
    col.precision
from sys.tables as tab
    inner join sys.columns as col
        on tab.object_id = col.object_id
    left join sys.types as t
    on col.user_type_id = t.user_type_id
order by schema_name,
    table_name,
    column_name;

Columns

  • schema_name - name of the schema
  • table_name - name of the table
  • column_id - table column id, starting at 1 for each table
  • column_name - name of the column
  • data_type - column data type
  • max_length - data type max length
  • precision - data type precision

Rows

  • One row: represents one table column
  • Scope of rows: all columns in all tables in a database
  • Ordered by: schema, table and column name

Sample results

You could also get this

Get this interactive HTML data dictionary in minutes with Dataedo.

See live HTML data dictionary sample

Try for free

Comments are only visible when the visitor has consented to statistics cookies. To see and add comments please accept statistics cookies.
0
There are no comments. Click here to write the first comment.