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’;//查看是否开启慢查询日志 ...
随机推荐
- Linux(CentOS6.X)安装mysql
首先执行rpm -qa|grep -i mysql检查一下是否已经安装过mysql mysql-libs-5.1.73-5.el6_6.x86_64 可见已经安装了库文件,应该先卸载,不然会出现覆盖错 ...
- uva 1658 Admiral (最小费最大流)
uva 1658 Admiral 题目大意:在图中找出两条没有交集的线路,要求这两条线路的费用最小. 解题思路:还是拆点建图的问题. 首先每一个点都要拆成两个点.比如a点拆成a->a'.起点和终 ...
- 《Android源代码设计模式解析与实战》读书笔记(十)
第十章.解释器模式 解释器模式是一种用的比較少的行为型模式.其提供了一种解释语言的语法或表达式的方式. 可是它的使用场景确实非常广泛,仅仅是由于我们自己非常少回去构造一个语言的文法,所以使用较少. 1 ...
- Echarts学习记录——如何给x轴文字标签添加事件
Echarts学习记录——如何给x轴文字标签添加事件 关键属性 axisLabel下属性clickable:true 并给图表添加单击事件 根据返回值判断点击的是哪里 感觉自己的方法有点变扭,有更好办 ...
- django 生成复杂的 PDF 文件(数据较多时)
如果您在创建一个复杂的 PDF 文档(或者任何较大的数据块),请使用 cStringIO 库存放临时生成的 PDF 文件. cStringIO 提供了一个用 C 编写的类似文件对象的接口,从而可以使系 ...
- python之模块calendar(汇集了日历相关的操作)
# -*- coding: utf-8 -*- #python 27 #xiaodeng #calendar日历模块 import calendar #3个大类: calendar.Calendar( ...
- Jenkins执行批处理文件失败
今天搭建Jenkins持续集成环境,编译环境是.net,在.net下没有比较好的代码覆盖率测试插件,所以用了开源的OpenCover,计算代码覆盖率,然后用ReportGenerator导出hmtl格 ...
- 使用maven编译Java项目
摘要: 综述 本文演示了用Maven编译Java项目 需要 时间:15分钟 文本编辑器或者IDE JDK 6 或者更高版本 创建项目 本例主要为了展示Maven,所以Java的项目力求简单. 创建项目 ...
- EntityFramework 5.0 CodeFirst 教程01-搭建环境和快速上手
----------------------------目录------------------------------ EntityFramework 5.0 CodeFirst 教程03-数据结构 ...
- 【RS】Local Low-Rank Matrix Approximation - LLORMA :局部低秩矩阵近似
[论文标题]Local Low-Rank Matrix Approximation (icml_2013 ) [论文作者]Joonseok Lee,Seungyeon Kim,Guy Lebanon ...