GBase 8a学习总结(3)
项目设计方案
1 row in set
用户变量可以用于表达式所允许的任何地方。注意,必须明确指定常量的上下文中不能使用变量,例如,在SELECT 的LIMIT 子句中。
如果用户使用的变量没有初始化,那么它的值就为NULL。
1.3 操作符和函数
在SQL 语句中可以使用表达式,表达式可以包含常量,字段,NULL,操作符和函数。本章描述GBase 8a MPP Cluster 中用于写在表达式中的操作符和函数。
包含NULL 的表达式总是得出NULL 值结果,除非表达式中的操作和函数在文档中有另外的说明。 1.3.1
操作符
1.3.1.1 操作符优先级
操作符优先级在下面列出,从最高到最低。同一行的操作符具有同样的优先级。
BINARY,COLLATE !
-(unary minus),~(unary bit inversion) ^
*,/,DIV,%,MOD -,+ <<,>> & |
=,<=>,>=,>,<=,<,<>,!=,IS,LIKE,REGEXP,IN BETWEEN,CASE,WHEN,THEN,ELSE NOT &&,AND OR,XOR :=
9
项目设计方案
1.3.1.2 圆括号
(...)
括号,使用它来规定一个表达式的运算顺序,放在括号里的操作符优先执行。 示例1:不使用括号,表达式先执行乘法操作,再执行加法操作。 gbase> SELECT 1+2*3 FROM t; +-------+ | 1+2*3 | +-------+ | 7 | +-------+ 1 row in set
示例2:使用括号,表达式先执行括号中的加法操作,再执行括号外的乘法操作。
gbase> SELECT (1+2)*3 FROM t; +---------+ | (1+2)*3 | +---------+ | 9 | +---------+ 1 row in set 1.3.1.3 比较函数和操作符
比较运算的结果是1(TRUE)、0((FALSE)或NULL。这些运算可用于数字和字符串上。根据需要,字符串将会自动地被转换到数字,而数字也可自动转换为字符串。
说明:本章中的一些函数(如GREATEST()和LEAST())的所得值虽然不包括1(TRUE)、0(FALSE)或NULL,但对参数值进行比较时,也会基于下述规则。
GBase 8a MPP Cluster 使用下列规则进行数值比较:
? 如果一个或两个参数是NULL,比较的结果是NULL,除了<=>比较符(含有
NULL 参数时,比较结果不是NULL)。
10
项目设计方案
? 如果在一个比较操作中两个参数均是字符串,它们作为字符串被比较。 ? 如果两个参数均是整数,它们作为整数被比较。
? 如果比较操作中,一个参数为字符串,另一个为整数,则以操作符左侧参
数的数据类型为准。
? 十六进制值如果不与一个数字进行比较,那么它将当作一个二进制字符串。
? 如果参数之一是DATETIME 列,而另一参数是一个常量,在比较执行之前,这个常量被转换为一个时间戳。需要注意的是IN()中的参数不是这样的。为了安全起见,建议用户在比较时使用完整的DATETIME/DATE/TIME 字符串。
? 在所有其它情况下,参数作为浮点(REAL)数字被比较。 ? 要转换一个值成为一个特殊的类型,用户可以使用CAST()函数。 GBase 8a MPP Cluster主要的比较函数和操作符包括: 1.3.1.3.1
= 等于
a=b
如果两个操作数相等,则返回1。
1.3.1.3.2
<=> NULL值安全等于
NULL 值安全等于。这个操作符像?=?操作符一样执行相等比较。 如果所有的操作数是NULL,那么返回的是1 而不是NULL。 如果有且只有一个操作数是NULL,那么返回的是0 而不是NULL。
1.3.1.3.3
<> , != 不等于
a<>b 或a!=b
如果两个操作数不相等,则返回1。
1.3.1.3.4
<= 小于或者等于
a<=b
如果a 小于或等于b,则返回1。
1.3.1.3.5
<小于
a
如果a 小于b,则返回1。
1.3.1.3.6
>= 大于或者等于
11
项目设计方案
a>=b
如果a 大于或等于b,则返回1。
1.3.1.3.7
>大于
a>b
如果a 大于b,则返回1。
1.3.1.3.8
is boolean_value ,is not boolean_value
根据一个布尔值来检验一个值,此处的布尔值可以是TRUE、FALSE 或 UNKNOWN。
1.3.1.3.9
expr BETWEEN min AND max
如果expr 的值在min 和max 之间(包括min 和max),返回1,否则返回0。
若所有参数都是同一类型,则上述关系相当于表达式(min <= expr AND expr<= max)。其它类型的转换根据本章开篇所述规律进行,且适用于三种参数中任意一种。
1.3.1.3.10 expr NOT BETWEEN min AND max
等同于NOT(expr BETWEEN min AND max)。
1.3.1.3.11 COALESCE(value,...)
返回值为列表当中的第一个非NULL 值,在全部为NULL 值的情况下返回值为NULL。
1.3.1.3.12 GREATEST(value1,value2,...)
当有两个或多个参数时,返回值为最大的参数值。 当参数中有一个为NULL 时,直接返回NULL。
当参数都是字符串时,默认是不区分大小写的,如果希望字符串值的参数进行大小写敏感,则在需要敏感的字符串参数前加上BINARY。
这些参数比较使用下列规则:
? 如果返回值在INTEGER 上下文中或者所有的参数是整型值,那么它们
使用整数比较;
? 如果返回值在REAL 上下文中或者所有的参数是实数值,那么它们使
用实数比较;
12
项目设计方案
? 如果所有的参数是大小写敏感的字符串,那么参数比较也是大小写敏
感的;
? 其它情况下,参数比较大小写不敏感。
1.3.1.3.13 expr IN (value,...)
如果expr 是IN 列表中的任一值,它将返回1,否则返回0。
如果所有的值均是常量,那么所有的值被按照expr 的类型进行计算和排序。
1.3.1.3.14 expr NOT IN (value,...)
等价于NOT(expr IN (value,...))。
1.3.1.3.15 ISNULL(expr)
如果expr 为NULL,ISNULL()的返回值为1,否则返回值为0。
1.3.1.3.16 LEAST(value1,value2,...)
有两个或者更多的参数,返回最小的参数值。假如任意一个变量为NULL,则LEAST()的返回值为NULL。
LEAST()对参数进行比较所依据的规则同GREATEST()相同。
1.3.1.4 逻辑操作符
在SQL 中,所有的逻辑操作符返回的值均为TRUE、FALSE 或NULL(UNKNOWN),它们是由1(TRUE)、0(FALSE)和NULL 来实现的。 1.3.1.4.1
NOT,!逻辑非
如果操作数为0,返回1;如果操作数为非零,返回0;如果操作数为NULL,返回NULL。 1.3.1.4.2
XOR逻辑异或
当任意一个操作数为NULL 时,返回值为NULL。 对于非NULL 的操作数:
真(1)异或假(0)的结果是真,假(0)异或真(1)的结果也是真。 真(1)异或真(1)的结果是假,假(0)异或假(0)的结果是假。 就是说两个值不相同,则异或结果为真,反之,为假。 1.3.1.5 转换操作符和函数 1.3.1.5.1
BINARY
13
…… 此处隐藏:1238字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




