类别:

上下文函数 (会话)

GETVARIABLE

返回与 SQL 变量名关联的值。

另请参阅:

会话变量函数

语法

GETVARIABLE( '<name>' )
Copy

实参

name

SQL 变量的名称。

即使您在定义变量时使用小写字母,也必须以大写字母指定名称。

返回

返回值的数据类型是 VARCHAR。

使用说明

如果在同一会话中多次调用该函数,则此函数将使用当前会话的结果缓存。结果缓存适用于调用此函数的任何位置,包括策略对象的正文,例如行访问策略。

示例

此示例显示如何使用此函数以及获取变量值的其他方法:

SET MY_LOCAL_VARIABLE= 'my_local_variable_value';
+----------------------------------+
| status                           |
|----------------------------------|
| Statement executed successfully. |
+----------------------------------+
SELECT 
    GETVARIABLE('MY_LOCAL_VARIABLE'), 
    SESSION_CONTEXT('MY_LOCAL_VARIABLE'),
    $MY_LOCAL_VARIABLE;
+----------------------------------+--------------------------------------+-------------------------+
| GETVARIABLE('MY_LOCAL_VARIABLE') | SESSION_CONTEXT('MY_LOCAL_VARIABLE') | $MY_LOCAL_VARIABLE      |
|----------------------------------+--------------------------------------+-------------------------|
| my_local_variable_value          | my_local_variable_value              | my_local_variable_value |
+----------------------------------+--------------------------------------+-------------------------+
Copy

使用 SET 命令创建变量时,变量名称将强制为全部大写。函数 GETVARIABLE 和 SESSION_CONTEXT 必须传递函数名称的大写版本。“$”表示法适用于大写或小写变量名称。

SET var_2 = 'value_2';
+----------------------------------+
| status                           |
|----------------------------------|
| Statement executed successfully. |
+----------------------------------+
SELECT 
    GETVARIABLE('var_2'),
    GETVARIABLE('VAR_2'),
    SESSION_CONTEXT('var_2'),
    SESSION_CONTEXT('VAR_2'),
    $var_2,
    $VAR_2;
+----------------------+----------------------+--------------------------+--------------------------+---------+---------+
| GETVARIABLE('VAR_2') | GETVARIABLE('VAR_2') | SESSION_CONTEXT('VAR_2') | SESSION_CONTEXT('VAR_2') | $VAR_2  | $VAR_2  |
|----------------------+----------------------+--------------------------+--------------------------+---------+---------|
| NULL                 | value_2              | NULL                     | value_2                  | value_2 | value_2 |
+----------------------+----------------------+--------------------------+--------------------------+---------+---------+
Copy
语言: 中文