菜鸟的MySQL学习笔记(四)

MySQL中的运算符和函数:

1、字符函数;
2、数值运算符与函数;
3、比较运算符与函数;
4、日期时间函数;
5、信息函数;
6、聚合函数;
7、加密函数等;
 
6-1、字符函数:
CONCAT()                     字符连接      
#SELECT  CONCAT(first_name,last_name) AS fullname FROM name_test;   从name表中 连接显示 first last
CONCAT_WS()              使用指定的分隔符进行字符连接
#SELECT CONCAT_WS('|','A','b','C') ;     第一个参数指定分隔符  结果 A|b|C
FORMAT()                     数字格式化,返回类型为字符型
#SELECT FORMAT(12560.75,2);     后面的2 指保留几位小数
LOWER()                       转换为小写字母  
#SELECT LOWER(MySQL);    结果为mysql
UPPER()                        转换为大写字母
LEFT()                            获取左侧字符
#SELECT LEFT(MySQL,2);     结果为 My
RIGHT()                         获取右侧字符
LENGTH()                      获取字符串长度
#SELECT LENGTH('My SQL')  结果为6 中间有个空格
LTRIM()                         删除前导空格
# SELECT LENGTH(SELECT LTRIM('    MySQL   ');)  计算删除前导空格之后的字符长度
RIRIM()                          删除后续空格
TRIM()                           删除前导和后续空格 
#SELECT TRIM(LEADING'?' FROM  ‘???mysql???’) 将?替换掉空格 删除前导和后续的?  但中间的?去不掉
SUBSTRING()                字符串截取
#SELECT   SUBSTRING('MySQL',1,2)  截取位置第1个,长度为2
#SELECT   SUBSTRING('MySQL',3)     截取第3位以及以后的
#SELECT   SUBSTRING('MySQL',-1)    截取位置为-1,长度不能为负数
[NOT] LIKE                    模式匹配
#SELECT * FROM test WHERE first_name LIKE '%1%%' ESCAPE '1';   告诉1后面的%不需要作为通配符匹配
REPLACE()                    字符串替换
#SELECT REPLACE('???My??SQL???','?','!');  结果为!!!My!!SQL!!! 将?替换成!,也可以将?替换成空字符串(去空格,去符号)
 
6-2 数值运算符
CEIL()                      进一取整
#SELECT CEIL(3.01)  结果为4
DIV()                       整数除法
#SELECT 3 DIV 4   结果为0 
#SELECT 3/4   结果为0.75
FLOOR()                 舍一取整
#SELECT FLOOR(3.01 ) 结果为3
MOD()                    取余数(取模)
#SELECT 5.3 MOD 3;  结果为2.3 等价于 5%3
POWER()                幂运算
#SELECT POWER(3,2); 结果为9
ROUND()                四舍五入
#SELECT ROUND(3.132432); 结果为3
TRUNCATE()           数字截取
#SELECT TRUNCATE(125.89,0)  结果为125  截取不做四舍五入操作
[NOT] BETWEEN ... AND ...   (不)在多少与多少之间的范围
[NOT] IN()                            (不)在列出值的范围内 
IS [NOT] NULL                      (不)是空吗? 
 
6-3日期时期函数
NOW()                        当前的日期和时间
CURDATE()                 当前的日期
CURTIME()                  当前的时间
DATE_ADD()               日期变化
#SELECT DATE_ADD('2015-3-12',INTERVAL -365 DAY); 日期减少365天
#SELECT DATE_ADD('2015-3-12',INTERVAL 3 WEEK);    日期增加3周
DATEDIFF()                 日期差值
#SELECT DATEDIFF('2013-3-12','2014-3-12'); 计算日期的差值
DATE_FORMAT()        日期格式化
#SELECT DATE_FORMAT('2013-3-12','%m/%d/%Y');   把日期格式变为 3/12/2013
 
6-4 信息函数
CONNECTION_ID()               连接ID
DATEBASE()                          当前数据库
LAST_INSERT_ID()                 最后插入记录的ID号  多条数据同时插入,只打印第一条
USER()                                   当前用户
VERSION()                            版本信息 
6-5 聚合函数
AVG()                   平均值
COUNT()              计数
MAX()                  最大值
MIN()                   最小值
SUM()                  求和
6-6 加密函数
MD5()                         信息摘要算法
#SELECT MD5('admin')
PASSWORD()             密码计算
#主要用来修改密码  SET PASSWOER=PASSWORD('admin')  
posted @ 2016-04-26 11:38  回眸一笑百贱生  阅读(172)  评论(0编辑  收藏  举报