操作符优先级.PDFVIP

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作符优先级

操作符优先级 以下列表显示了操作符优先级的由低到高的顺序。排列在同一行的操作符具有相同的优先级。 := ||, 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 按照以下规则进行数值比较: • 若有一个或两个参数为 NULL,除非NULL-safe =等算符,则比较运算的结果为NULL。 • 若同一个比较运算中的两个参数都是字符串,则按照字符串进行比较。 • 若两个参数均为整数,则按照整数进行比较。 • 十六进制值在不需要作为数字进行比较时,则按照二进制字符串进行处理。 • 假如参数中的一个为 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; - 1, 1, 0 expr BETWEEN min AND max 假如expr大于或等于min 且expr 小于或等于max,则BETWEEN 的返回值为1,或是0。若所有参数都是同一类型,则上述关系相当于表达式 (min = expr AND expr = max)。其它类型的转换根据本章开篇所述规律进行,且适用于3种参数中任意一种。 expr NOT BETWEEN min AND max 这相当于NOT(expr BETWEEN min AND max)。 COALESCE(value,...) 返回值为列表当中的第一个非 NULL 值,在没有非NULL 值得情况下返回值为 NULL。 GREATEST(value1,value2,...) 当有2或多个参数时,返回值为最大(最大值的)参数。比较参数所依据的规律同LEAST()相同。在没有自变量为NULL 的情况下,GREATEST()的返回值为NULL。 expr IN(value,...) 若expr 为IN 列表中的任意一个值,则其返回值为 1 ,否则返回值为0。假如所有的值都是常数,则其计算和分类根据 expr 的类型进行。这时,使用二分搜 索来搜索信息。如IN 值列表全部由常

文档评论(0)

l215322 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档