SQL表达式

适用于:检查标记是的砖的SQL检查标记是的砖运行时

一个表达式是一个公式,计算结果是基于文本或引用列,字段,或变量,使用函数或运算符。

语法

{文字|parameter_marker|column_reference|field_reference|parameter_reference|表达式|情况下表达式|expr操作符expr|操作符expr|expr(expr]|function_invocation|(expr)|(expr,expr(,])|scalar_subquery}scalar_subquery(查询)

的括号expr(expr]实际的括号,不显示可选的语法。

参数

  • 文字

    文字描述的类型数据类型

  • parameter_marker

    一个输入值的占位符提供的API提交SQL语句。

  • column_reference

    引用一个表中某一列或列别名。

  • field_reference

    对字段的引用结构体类型

  • parameter_reference

    引用参数的SQL用户定义函数的身体功能。可能使用不合格的名称的引用参数与函数名或资格名称。当解决标识符参数构成最外层的范围。

  • 把表达式

    铸造一种不同类型的参数表达式。

  • 案例表达

    一个表达式允许有条件的评估。

  • expr

    加上一个表达式本身操作符或者这是一个函数的参数。

  • 操作符

    一元或二元运算符。

  • expr (expr)

    引用一个数组元素或地图的关键。

  • function_invocation

    一个表达式调用内置的或用户定义的函数。

    页面为每个内置函数和运算符描述它们的参数的数据类型。砖执行隐式铸造预期类型使用SQL数据类型规则。如果操作员或函数提供参数是无效的,砖提出了一个错误。函数也文档哪些参数是必需的或可选的。

    当调用一个SQL用户定义函数你可能省略参数的参数如果违约定义的参数。

  • (expr)

    执行优先级,覆盖运算符优先级

  • (expr expr […])

    创建一个结构体两个或两个以上的字段。这个符号是同义的结构函数

  • scalar_subquery:

    • (查询)

      一个表达式基于查询必须返回一个列和一个行。

页面为每个函数和运算符描述它们的参数的数据类型。砖执行隐式铸造预期类型使用SQL数据类型规则。如果操作员或函数提供参数是无效的,砖提出了一个错误。

看到列、字段和参数分辨率名称解析的更多信息。

常数表达式

一个表达式仅基于文本或确定性函数不带参数。砖可以执行通常的表达和使用产生恒定的文字是必需的。

布尔表达式

一个表达式的结果类型布尔。一个布尔表达式有时也称为条件或者一个谓词

标量子查询

的表达形式(查询)。一列的查询必须返回一个表,最多一行。

如果查询没有返回任何行,结果是。如果查询返回多个行,砖返回一个错误。否则,查询结果返回的值。

简单的表达式

不包含的表达式查询,如标量子查询或存在谓词。

例子

>选择1;1 >选择(选择1)+ 1;2 >选择1 + 1;2 >选择2 * (1 + 2);6 >选择2 * 1 + 2;4 >选择substr(“火花”,1、2);Sp >从价值选择c1 + c2 (1、2), t (c1, c2);3 >选择[1]的值(数组(10、20))当T(一个);20 >选择正确;真正>选择(c1, c2, c3))值(1、2、3)T (c1, c2, c3); {"c1":1,"col2":{"c2":2,"c3":3}}