使用示例数据库

示例数据库 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;
Copy

本主题内容:

查看示例数据库

您可以在 Web 界面中或使用 SQL 查看示例数据库及其内容:

Snowsight:

选择 Data » Databases » SNOWFLAKE_SAMPLE_DATA

Classic Console:

点击 Databases 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              |
+-------------------------------+-----------------------+------------+------------+-------------------------+--------------+---------+---------+----------------+
Copy

请注意,此示例说明样本数据库 SNOWFLAKE_SAMPLE_DATA 已由 Snowflake 与您的账户共享

SHOW DATABASES 输出中的 origin 列(或界面中 Databases 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 |
+----------+
Copy

备注

会话中必须有一个正在运行的当前仓库才能执行查询。您可以在会话中使用 USE WAREHOUSE 命令(或在 Web 界面的工作表中)设置当前仓库。

使用教程 SQL 脚本

Snowflake 提供了一系列教程,这些教程是带注释的 SQL 语句,用于查询示例数据集以回答一系列实际业务问题。

要从 Classic Console 访问教程,请执行以下步骤:

  1. Worksheets Worksheet 选项卡 页面中,点击工作表选项卡旁边的向下箭头,然后选择 Open Tutorials

    ../_images/ui-sql-worksheet-ws-menu.png
  2. Open Worksheet 对话框显示可用教程的列表。在对话框中,选择一个教程,然后点击 Open 按钮:

    ../_images/ui-sql-worksheet-ws-dialog.png
  3. 系统将创建一个包含教程内容的新工作表:

    ../_images/ui-sql-worksheet-ws-tutorial.png

然后,您可以像在任何工作表中一样执行教程中的查询。您还可以更改工作表中的教程并将其另存为自定义工作表。

语言: 中文