MySQL 5.6学习笔记(运算符)
MySQL运算符包括四类:算术运算符、比较运算符、逻辑运算符和位运算符。
1. 算术运算符
用于种类数值运算。包括:加(+)、减(-)、乘(*)、除(/)、取余(%)。
除法除数为零时,执行结果为null。取余同样如此。
mysql> select 10,10/0,10%0;
+----+------+------+
| 10 | 10/0 | 10%0 |
+----+------+------+
| 10 | NULL | NULL |
+----+------+------+
1 row in set (0.00 sec)
2. 比较运算符
用于比较运算。包括:大于(>)、小于(<)、等于(=)、大于等于(>=)、小于等于(<=)、不等于(!=)、以及IN、BETWEEN AND、IS NULL、GREATEST、LEAST、LIKE、REGEXP等。
LEAST,在有两个或多个参数时,返回最小值;
GREATEST,在有两个或多个参数时,返回最大值;
mysql> select least(2,0),greatest(10,12,11);
+------------+--------------------+
| least(2,0) | greatest(10,12,11) |
+------------+--------------------+
| 0 | 12 |
+------------+--------------------+
1 row in set (0.09 sec)
BETWEEN AND,格式为a between min and max;
mysql> select 10 between 20 and 2,10 between 2 and 20;
+---------------------+---------------------+
| 10 between 20 and 2 | 10 between 2 and 20 |
+---------------------+---------------------+
| 0 | 1 |
+---------------------+---------------------+
1 row in set (0.05 sec)
REGEXP,正则式匹配。
mysql> select 'ssky' regexp '^s','ssky' regexp 'y$', 'ssky' regexp '.sky','ssly' regexp '[ab]';
+--------------------+--------------------+----------------------+----------------------+
| 'ssky' regexp '^s' | 'ssky' regexp 'y$' | 'ssky' regexp '.sky' | 'ssly' regexp '[ab]' |
+--------------------+--------------------+----------------------+----------------------+
| 1 | 1 | 1 | 0 |
+--------------------+--------------------+----------------------+----------------------+
1 row in set (0.03 sec)
3. 逻辑运算符
逻辑运算符的求值所得结果均为1(true)或0(false),这类运算行有逻辑非(NOT 或 !)、逻辑与(AND 或 &&)、逻辑或(OR 或 ||)、逻辑异或(XOR)。
not null的返回值为NULL;
mysql> select not 0, not 1, not null;
+-------+-------+----------+
| not 0 | not 1 | not null |
+-------+-------+----------+
| 1 | 0 | NULL |
+-------+-------+----------+
1 row in set (0.00 sec)
and运算中一个操作数为null,另一操作数非零值,则返回值为NULL;or运算中当有一个操作数为null,另一个操作数非零值,则返回1,否则返回0,当两个数都为null时,返回NULL;
mysql> select 1 or 0, 1 or 2, null or 0,null or 2, null || null;
+--------+--------+-----------+-----------+--------------+
| 1 or 0 | 1 or 2 | null or 0 | null or 2 | null || null |
+--------+--------+-----------+-----------+--------------+
| 1 | 1 | NULL | 1 | NULL |
+--------+--------+-----------+-----------+--------------+
1 row in set (0.00 sec)
xor运算中任一个操作数为null则返回值为NULL。
4. 位操作运算符
参与运算的操作数,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)等6种。
mysql> select 1<<2,4<<2,1>>1,16>>2,bin(~4);
+------+------+------+-------+------------------------------------------------------------------+
| 1<<2 | 4<<2 | 1>>1 | 16>>2 | bin(~4) |
+------+------+------+-------+------------------------------------------------------------------+
| 4 | 16 | 0 | 4 | 1111111111111111111111111111111111111111111111111111111111111011 |
+------+------+------+-------+------------------------------------------------------------------+
1 row in set (0.00 sec)
上面使用了bin()函数查看4取反之后的结果。
MySQL 5.6学习笔记(运算符)的更多相关文章
- MYSQL视图的学习笔记
MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具 1. 视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...
- mySQl数据库的学习笔记
mySQl数据库的学习笔记... ------------------ Dos命令--先在记事本中写.然后再粘贴到Dos中去 -------------------------------- mySQ ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
- Dart学习笔记-运算符-条件表达式-类型转换
Dart学习笔记-运算符-条件表达式-类型转换 一.运算符 1.算术运算符 + (加)- (减)* (乘)/ (除)~/ (取整) %(取余) 2.关系运算符 == (等等) != (不等) > ...
- PHP和MySQL Web开发学习笔记介绍
前言 从2016年2月1日开始,之后的几个月左右的时间里,我会写一个系列的PHP和MySQL Web开发的学习笔记.我之前一直从事Java语言的开发工作,最近这段时间非常想学习一门语言,就选择了PHP ...
- MySQL索引知识学习笔记
目录 一.索引的概念 二.索引分类 三.索引用法 四 .索引架构简介 五.索引适用的情况 六.索引不适用的情况 继我的上篇博客:Oracle索引知识学习笔记,再记录一篇MySQL的索引知识学习笔记,本 ...
- MySQL属性SQL_MODE学习笔记
最近在学习<MySQL技术内幕:SQL编程>并做了笔记,本博客是一篇笔记类型博客,分享出来,方便自己以后复习,也可以帮助其他人 SQL_MODE:MySQL特有的一个属性,用途很广,可以通 ...
- mySql 基本语法学习笔记
create database if not exists yang; drop database if exists yang; show databases; show dat ...
- mysql性能优化学习笔记(2)如何发现有问题的sql
一.使用mysql慢查询日志对有效率问题的sql进行监控 1)开启慢查询 show variables like ‘slow_query_log’;//查看是否开启慢查询日志 ...
随机推荐
- SpringMVC学习笔记五:使用converter进行参数数据转换
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6832898.html 一:SpringMVC数据绑定机制 1:request到达SpringMVC框架时,框 ...
- Vivaldi浏览器媲美Chrome
Vivaldi跨平台的浏览器,很好的兼容性...基本上跟Chrome一个层次的... 好的东西,用一次就明白!好酒,酒香巷子深... Download: https://vivaldi.com/dow ...
- ios 中基本控件的定义
我的开发笔记--UILabel的详细使用及特殊效果 我的开发笔记--UIButton的详细使用 我的开发笔记---UISegmentedControl的详细使用 我的开发笔记---UITextFiel ...
- (原)luarocks install 提示 failed fetching manifest
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6400169.html 参考网址: https://github.com/torch/torch7/is ...
- lua闭包
function MakeCounter() return function() t = t + return t end end local func = MakeCounter() , do pr ...
- Zabbix Trigger表达式实例
Zabbix提供强大的触发器(Trigger)函数以方便进行更为灵活的报警及后续动作,具体触发器函数可以访问https://www.zabbix.com/documentation/2.0/manua ...
- linux下网络配置小节[from 老男孩的linux运维笔记]
对于linux高手看似简单的网络配置问题,也许要说出所以然来也并不轻松,因此仍然有太多的初学者徘徊在门外就不奇怪了, 这里,老男孩老师花了一些时间总结了这个文档小结,也还不够完善,欢迎大家补充,交流. ...
- VS2010 C++环境下DLL和LIB文件的生成与调试
利用VS2010工具,调试DLL文件的方法现总结如下: 在一个解决方案中生成两个工程,假设MYDLL和MYDLG两个工程,前者是DLL工程,后者DLG调用前边的DLL工程.设置如下: 目录如下:图,本 ...
- webpack window 处理图片和其他静态文件
安装url-loader npm install url-loader --save-dev 配置config文件 { test: /\.(png|jpg)$/, load ...
- Snip for Mac(桌面截图工具)安装
1.软件简介 Snip 一款用于桌面截图的工具. 2.资源列表 链接 提取密码 系统要求 软件语言 Snip for Mac v2.0 (5771) fgab macOS 10.6.8 及以上 ...