【发布时间】:2020-03-22 08:11:21
【问题描述】:
获取雪花数据库中所有表的行数的查询是什么。
【问题讨论】:
标签: snowflake-cloud-data-platform
获取雪花数据库中所有表的行数的查询是什么。
【问题讨论】:
标签: snowflake-cloud-data-platform
请使用以下查询:
SELECT t.table_schema || '.' || t.table_name as "table_name",t.row_count
FROM information_schema.tables t
WHERE t.table_type = 'BASE TABLE'
ORDER BY t.row_count
【讨论】:
我会采用不同的方法并使用 ACCOUNT_USAGE 共享中的 TABLES 视图。可能会有一些延迟,但对于较大的 Snowflake 帐户,我一直利用 ACCOUNT_USAGE 共享来处理此类事情。
以下内容为您提供记录数、表名“列表”以及给定数据库和架构的表数,您可以调整查询以满足您的需求。
SELECT SUM(row_count) total_row_count, listagg(table_name, ' ') tab_list, count(*) num_tabs
FROM snowflake.account_usage.tables
WHERE table_catalog = 'DB NAME HERE'
AND table_schema = 'SCHEMA NAME HERE'
AND table_type = 'BASE TABLE'
AND deleted IS NULL;
https://docs.snowflake.net/manuals/sql-reference/account-usage/tables.html
我希望这会有所帮助...Rich Murnane
【讨论】:
select TABLE_CATALOG||'.'||TABLE_SCHEMA||'.'||TABLE_NAME FQN,ROW_COUNT from YOURDATABASE.information_schema.tables where table_type = 'BASE TABLE';
+------------------------------------------------+-----------+
| FQN | ROW_COUNT |
|------------------------------------------------+-----------|
| YOURDATABASE.PUBLIC.FOO1 | 7108958 |
| YOURDATABASE.PUBLIC.FOO2 | 444847 |
| YOURDATABASE.PUBLIC.FOO3 | 2048267 |
| YOURDATABASE.PUBLIC.FOO4 | 212 |
+------------------------------------------------+-----------+
【讨论】:
我使用这个最简单的查询得到了结果:
use your_db_name.information_schema;
select * from tables where table_schema ='Your_schema_name';
查询愉快:)
【讨论】: