使用示例数据库¶
示例数据库 SNOWFLAKE_SAMPLE_DATA 与您在账户中创建的数据库相同,不过它是只读数据库。因此,不允许进行以下操作:
不能对数据集架构执行 DDL(即不能添加、删除或更改表和其他数据库对象)。
无法对架构中的表执行 DML。
不能对数据库或数据库中的任何架构/表执行克隆或 Time Travel。
但是,您可以使用所有相同的命令和语法来查看示例数据库、架构和表,以及对表执行查询。
重要
默认情况下会为较新的账户创建示例数据库。如果尚未为您的账户创建数据库,并且您希望访问该数据库,请在 ACCOUNTADMIN 角色处于活动状态的情况下执行以下 SQL 语句:
-- Create a database from the share.
CREATE DATABASE SNOWFLAKE_SAMPLE_DATA FROM SHARE SFC_SAMPLES.SAMPLE_DATA;
-- Grant the PUBLIC role access to the database.
-- Optionally change the role name to restrict access to a subset of users.
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE_SAMPLE_DATA TO ROLE PUBLIC;
本主题内容:
查看示例数据库¶
您可以在 Web 界面中或使用 SQL 查看示例数据库及其内容:
- Snowsight:
选择 Data » Databases » SNOWFLAKE_SAMPLE_DATA。
- Classic Console:
点击 Databases » SNOWFLAKE_SAMPLE_DATA:
点击对象选项卡可查看有关数据库中对象的摘要信息。
点击对象的名称可查看有关该对象的详细信息。
- SQL:
执行 SHOW DATABASES 命令。
您还可以使用相关 SHOW <objects> 命令来查看示例数据库中的对象。
例如,在 SQL 中:
show databases like '%sample%'; +-------------------------------+-----------------------+------------+------------+-------------------------+--------------+---------+---------+----------------+ | created_on | name | is_default | is_current | origin | owner | comment | options | retention_time | |-------------------------------+-----------------------+------------+------------+-------------------------+--------------+---------+---------+----------------| | 2016-07-14 14:30:21.711 -0700 | SNOWFLAKE_SAMPLE_DATA | N | N | SFC_SAMPLES.SAMPLE_DATA | ACCOUNTADMIN | | | 1 | +-------------------------------+-----------------------+------------+------------+-------------------------+--------------+---------+---------+----------------+
请注意,此示例说明样本数据库 SNOWFLAKE_SAMPLE_DATA 已由 Snowflake 与您的账户共享。
SHOW DATABASES 输出中的 origin
列(或界面中 Databases 页面中的 Origin 列)显示共享数据库 SFC_SAMPLES.SAMPLE_DATA 的完全限定名称,表明它源自 SFC_SAMPLES 账户(Snowflake 使用该账户来共享样本数据)。
查询示例数据库中的表和视图¶
若要使用示例数据库中的表或视图,您可以执行以下操作之一:
在查询中引用表的完全限定名称(格式为
snowflake_sample_data.schema_name.object_name
)。OR
使用 USE DATABASE 和/或 USE SCHEMA 命令指定会话的示例数据库(和架构)。
下面两个示例说明了如何使用这两种方法查询 tpch_sf1
架构中的 lineitem
表:
select count(*) from snowflake_sample_data.tpch_sf1.lineitem; +----------+ | COUNT(*) | |----------| | 6001215 | +----------+ use schema snowflake_sample_data.tpch_sf1; select count(*) from lineitem; +----------+ | COUNT(*) | |----------| | 6001215 | +----------+
备注
会话中必须有一个正在运行的当前仓库才能执行查询。您可以在会话中使用 USE WAREHOUSE 命令(或在 Web 界面的工作表中)设置当前仓库。
使用教程 SQL 脚本¶
Snowflake 提供了一系列教程,这些教程是带注释的 SQL 语句,用于查询示例数据集以回答一系列实际业务问题。
要从 Classic Console 访问教程,请执行以下步骤:
在 Worksheets 页面中,点击工作表选项卡旁边的向下箭头,然后选择 Open Tutorials:
Open Worksheet 对话框显示可用教程的列表。在对话框中,选择一个教程,然后点击 Open 按钮:
系统将创建一个包含教程内容的新工作表:
然后,您可以像在任何工作表中一样执行教程中的查询。您还可以更改工作表中的教程并将其另存为自定义工作表。