类别:

上下文函数 (通用)

SYS_CONTEXT(SNOWFLAKE$ENVIRONMENT 命名空间)

返回有关调用该函数的环境(客户端、当前账户和当前区域)的信息。

另请参阅:

SYS_CONTEXTSYS_CONTEXT(SNOWFLAKE$APPLICATION 命名空间)SYS_CONTEXT(SNOWFLAKE$ORGANIZATION 命名空间)SYS_CONTEXT(SNOWFLAKE$ORGANIZATION_SESSION 命名空间)SYS_CONTEXT(SNOWFLAKE$SESSION 命名空间)

语法

SYS_CONTEXT(
  'SNOWFLAKE$ENVIRONMENT' ,
  '<property>'
)
Copy

实参

'SNOWFLAKE$ENVIRONMENT'

指定您要检索一个属性,以返回有关调用函数的环境的上下文信息。

'property'

要检索的属性的名称。您可以指定以下属性:

属性

描述

CLIENT

用于调用该函数的客户端、驱动程序或库的名称和版本。

如果在 Snowsight 中调用此函数,该函数将返回 Go Snowflake 驱动程序的名称和版本。

如果在 Snowflake CLI 中调用此函数,该函数将返回 Snowflake Connector for Python 的名称和版本。

此属性的值与 CURRENT_CLIENT 函数的返回值相同。

ACCOUNT

当前会话所属账户的 账户定位器

此属性的值与 CURRENT_ACCOUNT 函数的返回值相同。

REGION

当前会话所属账户的 :doc:` 区域 </user-guide/intro-regions>` 的名称。

对于在多个 :ref:` 区域组 <label-region_groups>` 中拥有账户的组织,此属性的值为 region_group.region

此属性的值与 CURRENT_REGION 函数的返回值相同。

返回

该函数会返回 VARCHAR 值。

使用说明

  • 如果您在 Shell 的双引号字符串中指定函数调用,请使用反斜杠 (\) 转义 $ 字符,以免 $ENVIRONMENT 被解释为 Shell 变量。

    例如,如果您使用的是 Snowflake CLI,并且您 指定 SQL 语句作为命令行实参 放在双引号里:

    snow sql --query "SELECT SYS_CONTEXT('SNOWFLAKE\$ENVIRONMENT', 'CLIENT');"
    
    Copy

示例

以下示例返回用于执行命令的客户端名称和版本:

SELECT SYS_CONTEXT('SNOWFLAKE$ENVIRONMENT', 'CLIENT');
Copy

以下示例返回当前会话所属账户的账户定位器:

SELECT SYS_CONTEXT('SNOWFLAKE$ENVIRONMENT', 'ACCOUNT');
Copy

以下示例返回当前会话所属账户的区域:

SELECT SYS_CONTEXT('SNOWFLAKE$ENVIRONMENT', 'REGION');
Copy
语言: 中文