- 9
- 0
- 约5.61万字
- 约 45页
- 2021-10-19 发布于福建
- 举报
操作符优先级
以下列表显示了操作符优先级的由低到高的顺序。排列在同一行的操作符具有相同的优先级。
:=
||, OR, XOR
, AND
NOT
BETWEEN, CASE, WHEN, THEN, ELSE
=, =, =, , =, , , !=, IS, LIKE, REGEXP, IN
|
,
-, +
*, /, DIV, %, MOD
^
- ( 一元减号 ), ~ ( 一元比特反转 )
!
BINARY, COLLATE
注释:假如 HIGH_NOT_PRECEDENCE SQL 模式被激活,则 NOT 的优先级同 the ! 操作符相同。
比较函数和操作符
比较运算产生的结果为 1(TRUE) 、0 (FALSE) 或 NULL 。这些运算可用于数字和字符串。根据需要,字符串可自动转换为数字,而数字也可自动转换为字符串。
本章中的一些函数 ( 如 LEAST() 和 GREATEST()) 的所得值不包括 1 (TRUE) 、 0 (FALSE) 和 NULL 。然而, 其所得值乃是基于按照下述规则运行的比较运算 :
MySQL 按照以下规则进行数值比较:
= 。
? 若同一个比较运算中的两个参数都是字符串,则按照字符串进行比较。
? 若两个参数均为整数,则按照整数进行比较。
? 十六进制值在不需要作为数字进行比较时,则按照二进制字符串进行处理。
? 假如参数中的一个为 TIMESTAMP 或 DATETIME 列,而其它参数均为常数, 则在进行比较前将常数转为 timestamp 。这样做的目的是为了使 ODBC 的
进行更加顺利。 注意,这不适合 IN() 中的参数 ! 为了更加可靠,在进行对比时通常使用完整的 datetime/date/time 字符串。
? 在其它情况下,参数作为浮点数进行比较。
在默认状态下,字符串比较不区分大小写,并使用现有字符集 ( 默认为 cp1252 Latin1 ,同时对英语也适合 ) 。
为了进行比较,可使用 CAST() 函数将某个值转为另外一种类型。 使用 CONVERT() 将字符串值转为不同的字符集。
=
NULL-safe equal. 这个操作符和 = 操作符执行相同的比较操作,不过在两个操作码均为 NULL 时,其所得值为 1而不为 NULL ,而当一个操作码为 NULL 时,其
所得值为 0 而不为 NULL 。
mysql SELECT 1 = 1, NULL = NULL, 1 = NULL;
- 1, 1, 0
IS boolean_value IS NOT boolean_value
根据一个布尔值来检验一个值,在这里,布尔值可以是 TRUE、FALSE 或 UNKNOWN。
mysql SELECT 1 IS TRUE, 0 IS FALSE, NULL IS UNKNOWN;
- 1, 1, 1
IS NULL IS NOT NULL
检验一个值是否为 NULL 。
mysql SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;
- 0, 0, 1
mysql SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;
您可能关注的文档
最近下载
- 附件: 黑龙江省年“村村大学生计划(培养)” 招 生 简 章 “村村 .doc VIP
- 往年江苏省教师招聘考试教育学心理学真题及答案.docx VIP
- 国资集团考试试题及答案.docx VIP
- 部编版语文一年级下册阅读11《浪花》课件PPT.pptx VIP
- 2018海湾GST-QKP04、GST-QKP04 2气体灭火控制器说明书.docx
- 浙江省杭州市西湖区之江中学2024-2025学年高二上学期期末数学试题(解析版).docx VIP
- 人教版五年级上册数学期末测试卷及参考答案ab卷.docx VIP
- [中央]2025年中国建设银行建信养老金管理有限责任公司校园招聘20人笔试历年参考题库频考点试题附带答案详解.docx
- 海南省公务员考试模拟试题库《行测》部分及参考答案.docx VIP
- BS EN 14540-2014 国外国际规范.pdf VIP
原创力文档

文档评论(0)