MySQL入门(5)——运算符
MySQL入门(5)——运算符
算术运算符
MySQL支持的算数运算符包括加、减、乘、除、求余。
符号 | 作用 |
---|---|
+ | 加法运算 |
- | 减法运算 |
* | 乘法运算 |
/ | 除法运算 |
% | 求余运算 |
DIV | 除法运算,返回商,同“/” |
MOD | 求余运算,返回余数,同“/” |
比较运算符
比较运算符是查询数据时最常用的一类运算符。SELECT语句中的条件语句经常需要使用比较运算符。
运算符 | 名称 | 示例 | 运算符 | 名称 | 示例 |
---|---|---|---|---|---|
= | 等于 | id=5 | IS NOT NULL | N/A | id IS NOT NULL |
> | 大于 | id>5 | BETWEEN AND | N/A | id BETWEEN 1 and 4 |
< | 小于 | id<5 | IN | N/A | id IN(3,4,5,6) |
>= | 大于等于 | id>=5 | NOT IN | N/A | name NOT IN(Java,C#) |
<= | 小于等于 | id<=5 | LIKE | 模式匹配 | name LIKE('C%') |
!=或<> | 不等于 | id!=5 | NOT LIKE | 模式匹配 | name NOT LIKE('Java%') |
IS NULL | N/A | id IS NULL | REGEXP | 常规表达式 | name 正则表达式 |
在使用“=”判断两个字符串是否相同时,数据库系统都是根据字符的ASCII码进行判断的,ASCII码相同则字符相同。空值(NULL)不得使用“=”判断。
IS NULL用来判断操作数是否为空值(NULL)。操作数为NULL时,返回1;否则返回0。IS NOT NULL与IS NULL正好相反。
“=”、“<>”、“!=”、“>”、“>=”、“<”、“<=”等运算符都不得用于判断空值(NULL),一旦使用,将返回结果NULL。可以使用“<=>”、IS NULL和IS NOT NULL来判断。
REGEXP匹配字符串,满足会返回1;否则返回0。REGEXP通常和“^”、“\$”、“.”一起使用。“^”用以匹配字符串的开始部分;“$”用以匹配字符串结尾部分;“.”用以代表字符串中的一个字符。
逻辑运算符
符号 | 作用 |
---|---|
&&或AND | 与 |
||或OR | 或 |
!或NOT | 非 |
XOR | 异或 |
位运算符
位运算符是二进制数上进行运算的运算符。位运算首先将操作数变为二进制数,再进行位运算,然后将结果又由二进制变回十进制。MySQL支持6种位运算符,分别是按位与、按位或、按位取反、按位异或、按位左移和按位右移。
符号 | 作用 |
---|---|
& | 按位与。进行该运算时,数据库系统首先将十进制数变为二进制,然后对应操作数的每个二进制位上进行与运算。1和1相与得1,和0相与得0。运算完成后再将二进制数变回十进制数。 |
| | 按位或。将操作数化为二进制数后,每位都进行或运算。 |
~ | 按位取反。将操作数化为二进制数后,每位都进行取反运算。 |
^ | 按位异或。将操作数化为二进制数后,每位都进行异或运算。 |
<< | 按位左移。“m<<n”表示m的二进制数向左移n位,右边补上n个0。 |
>> | 按位右移。“m>>n”表示m的二进制数向右移n位,左边补上n个0。 |
运算符的优先级
优先级 | 运算符 |
---|---|
1 | ! |
2 | ~ |
3 | ^ |
4 | *,/,DIV,%,MOD |
5 | +,- |
6 | >>,<< |
7 | & |
8 | | |
9 | =,<=>,<,<=,>,>=,!=,<>,IN,IS,NULL,LIKE,REGEXP |
10 | BETWEEN AND,CASE,WHEN,THEN,ELSE |
11 | NOT |
12 | &&,AND |
13 | ||,OR,XOR |
14 | := |
MySQL入门(5)——运算符的更多相关文章
- 21分钟 MySQL 入门教程(转载!!!)
21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...
- MySQL入门转载
21分钟 MySQL 入门教程 http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html 目录 一.MySQL的相关概念介绍 二.Wi ...
- MySQL入门笔记(二)
MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询 子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...
- 重新学习MySQL数据库1:无废话MySQL入门
重新学习Mysql数据库1:无废话MySQL入门 开始使用 我下面所有的SQL语句是基于MySQL 5.6+运行. MySQL 为关系型数据库(Relational Database Manageme ...
- Mysql学习总结(12)——21分钟Mysql入门教程
21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...
- 最新MySQL入门篇
一.SQL简介 SQL:结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系 ...
- MySQL入门02-MySQL二进制版本快速部署
在上篇文章 MySQL入门01-MySQL源码安装 中,我们介绍了MySQL源码安装的方法. 源码安装虽然有着更加灵活和更加优化等诸多优势.但源码编译安装部署的过程相对复杂,而且整个过程所花费的时间很 ...
- MYSQL入门全套(第三部)
MYSQL入门全套(第一部) MYSQL入门全套(第二部) 索引简介 索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构.如果想按特定职员的姓来查找 ...
- MySQL入门(三)
写了两篇<MySQL入门>以后我发现,写书的人还是都挺有本事的,起码人家知道怎么编排自己想讲的知识点,我实在是不知道该先说那里后说哪里,那我就想到什么讲什么吧. 一 写SQL 其实我是不想 ...
随机推荐
- 2.使用jenkins自动构建并发布应用到k8s集群
作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-06-21 14:39:01 星期五 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...
- woj1013 Barcelet 字符串 woj1014 Doraemon's Flashlight 几何
title: woj1013 Barcelet 字符串 date: 2020-03-18 18:00:00 categories: acm tags: [acm,字符串,woj] 字符串,字典序. 1 ...
- 转载-cookie和session的窃取
一.cookie的基本特性 如果不了解cookie,可以先到 wikipedia 上学习一下. http request 浏览器向服务器发起的每个请求都会带上cookie: GET /index.ht ...
- 数理统计11:区间估计,t分布,F分布
在之前的十篇文章中,我们用了九篇文章的篇幅讨论了点估计的相关知识,现在来稍作回顾. 首先,我们讨论了正态分布两个参数--均值.方差的点估计,给出了它们的分布信息,并指出它们是相互独立的:然后,我们讨论 ...
- 微信小程序开发抖音去水印功能
之前找了很多抖音去水印的工具全是广告,所以索性自己写了一个,提供给大家免费试用以下是微信小程序的二维码 使用教程: 1.打开微信搜索小程序:沸点软件技术服务 2.打开沸点软件技术服务小程序 3.去抖音 ...
- 机器学习入门实战——基于knn的airbnb房租预测
数据读取 import pandas as pd features=['accommodates','bathrooms','bedrooms','beds','price','minimum_nig ...
- SVG path d Attribute
Scalable Vector Graphics (SVG) 1.1 (Second Edition) W3C Recommendation 16 August 2011 http://www.w3. ...
- TypeScript & WebAssembly
TypeScript & WebAssembly WASM (module (func (param $lhs i32) (param $rhs i32) (result i32) local ...
- how to install MySQL on macOS
how to install MySQL on macOS MySQL Community Server 8.0.21 # version $ mysqladmin --version # 8.0.2 ...
- wxPython 创建基本窗口
$ pip install wxPython import wx class MyFrame(wx.Frame): def __init__(self, parent, title): super(M ...