MYSQL常见运算符和函数(四)_月渺无痕的博客-程序员秘密_mysql的除法函数

技术标签: 函数  mysql  

字符函数
(1)CONCAT():字符连接
SELECT CONCAT(‘IMOOC’,’-‘,’MySQL’);//IMOOC-MySQL
SELECT CONCAT (first_name,last_name) AS fullname FROM test;
(2)CONCAT_WS():使用指定的分隔符进行字符连接,(第一个位置指定分隔符,后面的为分割的内容)
SELECT CONCAT_WS(‘%’,’abc’,’def’); //第一个是指定的分隔符;//abc%def
(3)FORMAT():数字格式化
SELECT FORMAT(123560.75,2); //123,560.75;第二个参数若为0(四舍五入),显示整数
(4)LOWER():转化小写
(5)UPPER():转换大写
SELECT UPPER(‘mysql’);//MYSQL
(6)LEFT():获取左侧字符
(7)RIGHT():获取右侧字符
SELECT LEFT (‘MYSQL’,2); //MY
SELECT LOWER(LEFT(‘mYsql’,2)); //函数嵌套;//my
(8)LENGTH():取得字符串长度
LENGTH(‘MYSQL ’);//6;最后加了个空格
(9)LTRIM():清空字符串前面(左端)空格
(10)RTRIM():清空字符串末尾(右端)空格
(11)TRIM():删除前导、后续空格或者指定字符
SELECT TRIM(’ MySQL ‘);
SELECT TRIM(LEADING ‘?’ FROM ‘??MYSQL???’); //删除前导?
SELECT TRIM(TRAILING ‘?’ FROM ‘??MYSQL???’); //删除后续?
SELECT TRIM(BOTH ‘?’ FROM ‘??MYSQL???’); //前后均删除,但不能删除中间的?
(12)REPLACE():替换
SELECT REPLACE(‘MY???SQL’,’?’,”); //将问号换成空白,即去掉?
SELECT REPLACE(‘MY???SQL’,’?’,’~~’); //可以将n个?换成m个组合符号
(13)SUBSTRING():字符串截取(从1开始,编程里可能从0开始)
SELECT SUBSTRING(‘mYSQL’,1,2); //从字符串中的第一个位置开始截取2个字符mY
SELECT SUBSTRING(‘mYSQL’,3); //SQL 从第3的位置开始截取到结束
SELECT SUBSTRING(‘mYSQL’,-2); //QL 从倒数第2位开始截取到结束
SELECT SUBSTRING(‘mYSQL’,-3,-1); //F,长度不能是负的,但是有些编程语言支持,而mysql不支持
(14)[NOT] LIKE:模式匹配(百分号%代表任意个字符; 下划线_代表任意一个字符)
例子:”tom%”
SELECT * FROM test WHERE first_name LIKE ‘%1%%’ ESCAPE ‘1’; // 去除’1’后面的编译,查找包含’%’符号的信息 ‘_’任意一个字符

数值运算符函数
SELECT CEIL(3.01) ==>4 /*有n.xx 都是n+1 进一取整 向上取整
SELECT FLOOR(3.99) ==>3 /*取n.xx 都是n 舍一取整 向下取整
SELECT 3 DIV 4 ==> 0 /*整数除法,取商
SELECT 3/4 ==>0.75 /*除法
SELECT 2.1 MOD 2 ==>0.1 /*取余数(取模) 被除数是整数,小数都可以
SELECT 21 % 2 ==>1 /*取余数 mod=%
SELECT POWER(3,4) ==>81 /*3的4次方 幂运算
SELECT ROUND(3.1415926,4) ==>3.1416 /*四舍五入,保留4位小数
SELECT TRUNCATE(123.89,1) ==>123.8 /*截取小数点后的位数
SELECT TRUNCATE(123.89,0) ==>123 /*截取小数点后的位置,0位为整数部分
SELECT TRUNCATE(123.89,-1) ==>120 /*截取-1,从个位起去掉后面的数值替换为0

比较运算符和函数
[NOT]BETWEEN…AND…[不]在范围之内,结果返回1或0。
例如:15 BETWEEN 10 AND 16; //1。
[NOT]IN()列出值选项。
例如:SELECT 10 IN(5,10,25); //1。
IS [NOT] NULL:只有NULL IS [NOT] NULL返回1,其他情况(包括”,0)都返回0。

日期时间函数
(1)SELECT NOW(); // 当前日期时间。
(2)SELECT CURDATE(); // 当前日期。
(3)SELECT CURTIME(); // 当前时间。
(4)SELECT DATE_ADD(‘2014-3-12’,INTERVAL [-]365 DAY); // 2015-03-12,DAY还可以替换为WEEK,MONTH,YEAR等。DATE_ADD不是增加的意思,是变化,既可以增加,也可以减去。
(5)DATEDIFF(); // 日期的差值。
DATEDIFF(‘2013-3-12’,’2014-3-12’); // -365 日期差值。
(6)DATE_FORMAT(); // 日期格式化。
SELECT DATE_FORMAT(‘2014-3-2’,’%m%d%Y’); // 03/02/2014(’%’带有前导0作用)。

信息函数
SELECT CONNECTION_ID(); ==>2 /*连接ID
SELECT DATABASE(); /*当前打开的数据库
SELECT LAST_INSERT_ID(); /*最后插入的记录 同时写入多条记录是只返回写入的第一条的id。而且表中必须要有自动编号的字段。
DESC tab_name; /*查看数据库字段及属性,查看表结构
SELECT USER(); /* 打印当前用户信息
SELECT VERSION(); /*打印当前数据库信息

聚合函数
只有一个返回值
AVG() - 平均值
SELECT ROUND(AVG(goods_price),2) AS avg_price FROM tdb_goods;
COUNT() - 计数
SELECT COUNT(goods_id) as counts FROM tdb_goods;
MAX() - 最大值
SELECT MAX(goods_price) as counts FROM tdb_goods;
MIN() - 最小值
SUM() - 求和
SELECT SUM(goods_price) as counts FROM tdb_goods;

加密函数
MD5():信息摘要算法
select md5(’admin’);//给admin加密。如果mysql中的信息是为了web开发做准备,那么尽量使用md5
password():密码算法
set password=password(‘1236’)修改了当前登录密码为1236

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mwh613245/article/details/52604065

智能推荐

Stay Hungry Stay Foolish的真正含义_weixin_33724046的博客-程序员秘密

什么叫 Hungry?  英语里不会用 hungry来形容对于知识的追求。对知识,英语用的是「好奇」(curious) 这个字。一个求知若渴的人,叫做「intellectually curious」或是「eager to learn」,但绝对不会是「intellectually hungry」,也极少是「hungry to learn」。  用到 hu...

springboot系列三、springboot 单元测试、配置访问路径、多个配置文件和多环境配置,项目打包发布..._weixin_30702887的博客-程序员秘密

一、单元测试生成的demo里面包含spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito,没有的手动加上。<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boo...

java excel 批量导入_OOObject的博客-程序员秘密_java批量导入excel数据

java excel 批量导入 /** * 解析上传的excel, 默认只解析第一张Sheet * * @param file excel * @param startRow 数据开始行 * @return List<String [ ]> * @throws IOException */ public static List<String[]> getExcelData(Multipart

uncategorized SQLException; SQL state [null]; error code [0]; sql injection violation, syntax error_普通网友的博客-程序员秘密

本次主要记录自己在项目中编写SQL的时候遇到的异常uncategorizedSQLException;SQLstate[null];errorcode[0];sqlinjectionviolation,syntaxerrorERROR.pos117,line2,column111…1。

sed常用命令_独步秋风的博客-程序员秘密_sed 常用命令

文章目录释义Actions显示删除替换释义sed是stream editor的缩写,中文称之为“流编辑器”。sed command filecommand部分,针对每行要进行的处理file,要处理的文件Actions d:删除该行 p:打印该行 i:在行的前面插入新行 a:在行的后面插入新行 r:读取指定文件的内容。 w:写入指定文件。显示sed -n '10p' file # 显示第10行sed -n '10,20p' file # 显示第10到20之间的行sed

VS2017显示函数列表_EmbededCoder的博客-程序员秘密_vs显示函数列表

1、英文版:Tools->Options->Text Editor->(your language 或者 all language)->勾选 Navigation bar 中文版:工具→选项→文本编辑器→所有语言→导航栏2、在class view下可以查看每个工程下的元素了。打开后依次显示:工程名→类名→函数名。 ...

随便推点

git和github/gitee的区别_nownow_的博客-程序员秘密_git和github和gitee

如果前期只想在本地管理自己的代码,一定要掌握git。了解git产生的背景等信息,对于git的用途,会有更深刻的理解。Github/gitee是一个网站,社交编程以及代码托管的。网站是用来交流,可学习优秀的开源项目等。云端网站,必须联网才能使用。Git是一个工具,分布式代码管理的工具。本地软件,无需联网即可使用。的管理(创建分支,代码回滚等)。......

matlab实现动态规划,基于Matlab的动态规划顺序算法的实现-Read.PDF_Kuuumiko的博客-程序员秘密

基于Matlab的动态规划顺序算法的实现-Read维普资讯烟台师范学院学报(自然科学版)YantaiNormalUniversityJournal(NaturalScience) 2004,20(4):272—274基于 Matlab的动态规划顺序算法的实现黄 勇 ,曲长文 ,苏 峰 ,周鲁苹(1.海军航空工程学院信息融合研究所 ,山东 烟台 264001;2.烟台师范学院...

pycharm+python+anaconda安装_今天也要debug的博客-程序员秘密_pycharm 安装conda

python安装教程:Python安装教程(非常详细)_python如何安装使用-win7之家Python安装教程(非常详细)?pyrthon是一款比较流行的编程语言,有着比价简单的语法和丰富第三方库 是很多编程人员必备的软件帮用户处理个各种编程。不过很多新手 对于如何安装python,还不是很清楚,那么几天小编为大家带来了以及Python安装教程(非常详细),一起来看看吧http://www.win7zhijia.cn/win10jc/win10_44712.htmlpycharm安装教程:P

浅谈CHAR、WCHAR、TCHAR、LPCTSTR等_Zuqing_Johnny的博客-程序员秘密

VC驿站 VIP教程学习笔记● Ansi版本:char、        char * 、                                       const char *CHAR、    (PCHAR、PSTR、LPSTR)、    LPCSTR● Unicode版本:wchar_t、           wchar_t * 、

java开发需要知道的linux知识(一)_沈云群的博客-程序员秘密

做为一个后端开发,经常需要上服务器上看看哪里出问题了,又报什么错了,所以对程序员的服务器技能提出了一定的要求,要学到专业运维那个程度肯定是不可能的,我们只用掌握常用的的些就可以了,今天借着公司修服务器的机会,分享下常用的linux的知识创一个小群,供大家学习交流聊天如果有对学JAVA方面有什么疑惑问题的,或者有什么想说的想聊的大家可以一起交流学习一起进步呀。也希望大家对学JAVA能够持...

机器学习在金融风控实践经验_VinkinTsang的博客-程序员秘密

由于金融风控场景的特殊性,很多算法同学在刚进入这个领域容易“水土不服”,为了使机器学习项目(也包括图算法相关的应用)落地更加顺利,本文介绍下实践过程的一些经验和踩过的坑。金融风控场景的特殊性与电商、广告等场景的风控不同,金融风控有关“钱”的安全,决定了公司的营收甚至是公司的生命线。例如360金融月放款200亿,如果违约率上升1个点,损失有多大?当然反过来如果风控做得好,违约率稍微下降一些,大家就可以开心过个好年了:)此外,风险具有滞后性,用户借款后至少要一个月才能知道是否会违约,甚至很多用户在还了半