How to List Tables in Snowflake

Last updated July 24, 2026 · By the SaturnSQL team

SHOW TABLES lists tables in the current schema with size and row counts. For queryable results you can filter and join, use information_schema.tables instead.

SHOW TABLES returns rows but not a result set you can filter with WHERE. To query its output, follow it with SELECT * FROM TABLE(RESULT_SCAN(LAST_QUERY_ID())). It is metadata-only, so it needs no running warehouse and costs nothing, which is a real advantage over information_schema.

SHOW TABLES;
SHOW TABLES LIKE 'order%' IN SCHEMA analytics.public;

Query information_schema

information_schema.tables is a normal view you can filter and join, scoped to whichever database you qualify it with. Identifiers are stored uppercase unless they were created quoted, which is why the filter reads 'PUBLIC' and not 'public'. row_count and bytes are maintained by Snowflake and are exact for regular tables, NULL for views.

SELECT table_name, row_count, bytes
FROM analytics.information_schema.tables
WHERE table_schema = 'PUBLIC'
ORDER BY bytes DESC;

Run this in SaturnSQL

SaturnSQL is a browser-based SQL editor for teams: shared query library, schema-aware autocomplete, and scheduled exports to Google Sheets and Slack.

Try it free

Related Snowflake guides