mysql乘法函数_数据库入门(MySQL):mySQL运算符与mySQL常用函数
MySQL运算符
MySQL常用函数
一、MySQL运算符
1.1MySQL支持的数值计算运算符:加减乘除取余(+ - * / %);
SELECT 6+4加法操作,6-4减法操作,6*4乘法操作,6/4除法操作,6 DIV 4除法操作,6 % 4取余操作,6 MOD 4 取余操作;
示例:
1.2MySQL支持的比较运算符:大于、小于、等于、不等于、大于等于、小于等于(> 、 、!= 或 <> 、>= 、<=)、特殊比较运算符。
需要注意的null值的相等比较,其他与数学比较运算基本无异。
相等比较运算符判断结果为1或0,分别表示真假(true、false)比较结果。注意相等比较可以使用(<=>)进行比较,这因为(=)不能比较null。
除了数学类的比较运算符,还有一些特殊比较运算符:
BETWEEN AND存在于指定范围IS NULL为空IN存在于指定集合
LINK 通配符匹配
REGEXP 正则表达式匹配
BETWEEN value1 AND value2:用来比较匹配指定value1与value2两个值之间的值,比较值可以是数字、文本、时间。
select now() between '1999-01-01 00:00:00' and '2029-12-31 23:59:59';
IS NULL :用来比较值示为为空。
select null is null;
IN :用来比较(匹配)值是否在指定的集合中。
select "a" in ("a","b","c");
LINK :用来比较(匹配)字符是否符合指定模式的字符。
select "abcd" like "a%";
select 'cjg' regexp '[a-zA-a]';
通常比较运算符都用在where关键字后面,作为查询条件,匹配结果为1时,即结果为真(true)获取对应的数据记录。
1.3MySQL支持的逻辑运算符:与或非异或(AND(&&) 、OR(||)、NOT(!)、XOR)。更多可以参考:https://www.cnblogs.com/wisdom-jie/p/7732940.html
1.4MySQL支持的位运算符:按位与、按位或、按位取反、按位异或、按位左移、按位右移(&、|、~、^、<>)。更多参考:https://www.cnblogs.com/top5/archive/2011/02/07/1949615.html
二、MySQL常用函数
2.1字符串函数
CANCAT(str1,str2,...strn):连接字符串str1,str2,...strn为一个完整的字符串,其中任意参数包含null则直接返回null。
select concat('My','SQL'); #‘MySQL’select concat('abc',null,'efg');#合并参数中带有null值时合并结果为null值select concat(curdate(),12.34); #可以合并非字符串参数,最终得到一个字符串的值。(示例:日期+浮点数值 2020-2-1412.34)
CANCAT_WS(sep,s1,s2,...sn):将第一个值作为字符串的间隔字符,后面的参数以该字符作为间隔字符逐个拼接。
select concat_ws('-',029,88461234);#使用间隔字符实现拼接带区号的电话,注意0开头的值必须使用字符串,不然拼接时会不好含0select concat_ws('-','a','b','c');#'a-b-c'
select concat_ws('-','e',null,'f',null,'g');#concat_ws中带有null会忽略null值进行拼接:‘e-f-g’
STRCMP(str1,str2):比较字符串大小,当str1大于str2时返回1,否在返回-1。该函数实际上比较的是两个字符串ASCII码的大小,并且是从前到后逐个比较,除非是比较同一个字符一次对比就可以确定比较结果。所以要注意字符长度不对这一比较规律产生影响。
select strcmp('ab','ba');# -1
select strcmp('aca','bb');# -1
LENGTH()和CHAR_LENGTH():获取字符串长度。通常情况下使用length获取英文字符串长度,char_length获取中文字符长度,因为length获取的中文字符串长度为3,因为它实际上获取的是字节长度。
select length('abc');# 3
select char_length("他乡踏雪");# 4
select length('他乡踏雪');#12
UPPER()和UCASE():将字符串中的字母转成大写。
select upper("abc");# ABCselectucase("abc");# ABCselect upper("字母abc");# 字母ABCselect ucase("字母abc");# 字母ABC
LOWER()和LCASE():将字符串中的字母转换成小写。
select lower('ABC');# abcselect lcase('ABC');# abcselect lower("字母ABC") ,lcase("字母ABC"); # 字母abc 字母abc
FIND_IN_SET(str,strlist):返回字符串str在由N子链组成的字符串列表strlist中的位置,返回值范围1到N之间,如果strlist中没有str则返回0;所谓strlist字符串列表就是由“,”间隔的字符串,str必须是每个间隔开的完整子字符串才能查找到。
select find_in_set("mysql","oracle,sql server,mysql"); #3
select find_in_set("mysql","oracle,sql server,mysql-5.7");# 0
FIELD(str,str1,str2...,strn):返回字符串str在str1,str2...strn中的位置。如果str1,str2...,strn中包含str返回值位置1至n,如果不包含则返回0。
select field('mysql','oracle','sql server','mysql');# 3
LOCATE(str,str1)、POSITION(str IN str1)、INSTR(str1,str):这三个函数都是用来返回str在str1的开始位置。如果str1中包含str则返回1到n的值,不包含则返回0。
select locate('sql','mysql'); #3
select position('sql' in 'mysql'); #3
select instr('mysql','sql'); #3
ELT(n,str1,str2...,strn):返回指定位置的字符串,严格来说是返回指定位置的字符串参数,因为n指的是后面参数的位置。可以吧str1,str2..,strn理解为一个数组,n为索引值。但要注意n的取值为1至n,如果取值为0返回null。
select elt(0,'mysql','oracle','sql server');# null
select elt(1,'mysql','oracle','sql server');# mysql
MAKE_SET(num,str1,str2...,strn):根据二进制数num匹配筛选str1,str2...,strn,对应每一位的二进制数值为1时则筛选该值。
select bin(5) , make_set(5,'mysql','oracle','sql server'); # 101mysql,sql serverselect bin(7) , make_set(7,'mysql','oracle','sql server','sql');# 111 mysql,oracle,sql server
LEFT(str,num)、RIGHT(str,num):从左边或右边截取num字符长度的字符串。
select left('mysql',2); # myselect right('mysql',3); # sql
SUBSTRING(str,num,len)、MID(str,num,len):从字符串str中的num位置开始截取长度为len的字符串。注意num在str按照从1到n取值。num表示截取字符串长度的起始位置。
select substring('oraclemysql',7,5); # mysqlselect mid('oraclemysql',7,5); # mysql
LTRIM(str):去除字符串开始处空格。
select ltrim(" ab c de "); # 'ab c de'
RTRIM(str):去除字符串结束处的空格。
select rtrim(" ab c de "); # 'ab c de'
TRIM(str):去除字符串的首位空格。
select trim(" ab c de "); # 'ab c de'
INSERT(str,pos,len,newstr):将str中以第pos个字符起始,len长度的字符串替换成newstr字符串。
select insert("这是Oracle数据库系统",3,6,'MySQL');
REPLACE(str,substr,newstr):将str中所有的substr字符串替换成newstr。
select insert("这是Oracle数据库系统",3,5,'MySQL');
2.2数值函数
ABS(x):返回数值x的绝对值;
CELL(x):返回大于或等于x的最大整数值;
FLOOR(x):返回小于或等于x的最大整数值;
MOD(x,y):返回x除以y的余数;
RAND():返回0~1内的随机数;
ROUND(x,y):返回数值x的四舍五入后有y位小数的数值;
TRUNCATE(x,y):返回数值x且截断为y位小数的值。
2.3日期和时间函数
CURDATE():获取当前日期;
CURTIME():获取当前时间;
NOW():获取当前的日期和时间;
UNIX_TIMESTAMP(date):获取日期date的unix时间戳;
FROM_UNIXTIME():获取UNIX时间戳的日期值;
WEEKOFYEAR(date):获取日期为date对应一年中的第几周;
WEEK(date):返回日期为date的对应的星期几,对应的通常星期值(取值:1~7);
DAYOFWEEK():同上(取值:1~7);
WEEKDAY():返回日期为date对应的星期几的计数值(取值:0~6);
YEAR(date):返回日期为date的年份;
MONTHNAME(date):返回日期date的月份值;
DAYOFMONTH(date):返回日期date的日(号)值。
HOUR(time):返回时间为time的小时值;
MINUTE(time):返回时间为time的分钟值;
SECOND(time):返回时间time的秒值;
获取日期指定部分值的函数:
EXTRACT(type FROM date);
type用来指定去哪部分的日期值,可取值为:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND。
TO_DAYS(date):计算日期为date与0000年1月1日相隔的天数。
FROM_DAYS(number):通过距离0000年1月1日相隔天数数值计算改天的日期。
select now(), to_days(now()),from_days(to_days((now())));
ADDDATE(date,n):获取日期为date的n天后的日期;
SUBDATE(date,n):获取日期为date的n天前的日期;
mysql乘法函数_数据库入门(MySQL):mySQL运算符与mySQL常用函数相关推荐
- 视频教程-Access2013数据库入门教程3查询部分-MySQL
Access2013数据库入门教程3查询部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...
- 视频教程-Access2013数据库入门教程2窗体部分-MySQL
Access2013数据库入门教程2窗体部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...
- 视频教程-Access2013数据库入门教程4报表部分-MySQL
Access2013数据库入门教程4报表部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...
- C语言 -- string.h中函数功能详解与手动实现 - 02(常用函数memcpy、memmove、strcpy、strdup、strcat、strtok...)
内容预览 3.5.搬迁类型 --- 函数功能详细说明 :将内存空间中内容移动.复制到另一内存空间 3.6.搬迁类型 --- 函数功能测试与手动实现 3.6.1.memcpy.memccpy 3.6.2 ...
- mysql独有的函数_数据库之MySQL函数(一)
一.数学函数 1.绝对值函数 ABS(x) :返回 x 的绝对值 mysql> select ABS(2),ABS(-2.3),ABS(-22); 返回的结果如下: 数学学得好的大佬应该知道(本 ...
- mysql数据库支持的函数_数据库MySQL--常见函数
函数:将一组逻辑语句封装在函数体中,对外暴露函数名 调用:select 函数名() from 表:(若用到表中的字段则家上'from 表') 函数分类: 1.单行函数(例:concate.leng ...
- mysql的第一次作业_数据库入门第一次作业 - osc_2frf70qv的个人空间 - OSCHINA - 中文开源技术交流社区...
数据库入门第一次作业 1.在某大学的<>中,用如下表来存储学生信息.其中,用户信息.星座信息和血型信息分别采用Users.Star和Blood三个表来保存,其中Users表引用了Star和 ...
- mysql账目表_数据库1(数据库、表及表数据、SQL语句)
01数据库概念 A: 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来, 用户可以对数据库中的数据进行增加,修改,删除及查询操作. B: 什么是数据库管理 ...
- mysql+数据库连接标识_新人必看!连接到MySQL数据库的两种方法
原标题:新人必看!连接到MySQL数据库的两种方法 使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysq ...
- mysql 进阶方向_mysql数据库入门、进阶和提升(续二)
第十章 创建计算字段 将表中不同列中的数据字段通过拼接.加减乘除运算计算出结果并单独显示出来. 10.2拼接字段 将不同字段的值连接在一起并构成单个值.使用函数concat(),如果要将此值独立出来需 ...
最新文章
- C++中的 istringstream
- php的json格式
- matlab画三维图
- Android开发之Service通过Messenger实现线程间的通信
- php中的伪类选择器,css伪类选择器介绍
- 循环神经网络教程4-用Python和Theano实现GRU/LSTM RNN, Part 4 – Implementing a GRU/LSTM RNN with Python and Theano
- 微信“支付”页新增“出行服务” :已上线北深广三城
- ES6、TYPESCRIPT、ATSCRIPT和BABEL是什么玩意儿
- C# 如何判断系统是64位还是32位
- PyCharm无法找到已安装的Python类库的解决方法
- 计算机口令管理,农村信用社联合社计算机账户与口令管理办法
- WCF读书笔记(1)
- Atititi. naming spec 联系人命名与remark备注指南规范v5 r99.docx
- 【优化算法】多目标麻雀搜索优化算法(MSSA)【含Matlab源码 1366期】
- android-studio-ide下载安装配置JDK第一个helloworld 一条龙
- 谷歌浏览器安装postman插件
- GreaseMonkey批量删除微博代码
- 没有标准答案的GIS问题
- Andriod 实现一个微信聊天框(一)
- pyplot显示和保存没有边框的图片
热门文章
- Element-UI el-table组件表格打印
- 好用的格式化SQL工具SQL Prompt
- SSM+物业管理系统 毕业设计-附源码310928
- VS出现目标包.NETFramework的目标包没有安装
- 计算机组成原理课后习题答案(第五版白中英)
- Inceptor导出建表语句、存储过程
- 按键精灵定位坐标循环_按键精灵基础命令教程
- 计算机二级学科代码,二级学科分和代码表.doc
- java模拟器下载文件_KEmulator(java模拟器)最新下载
- 《21世纪英汉汉英双向词典》《朗文当代英语辞典第五版》《牛津高阶英汉双解词典第7版》...