Mysql数据库函数contac_函数:函数删除操作语法&使用例——《mysql 从入门到内卷再到入土》...

内卷能让一个群体的内部变更加精致,但是本质上却没有任何的进步,并且会导致更多资源的浪费。它是zbzy社会下人口过多的必然现象。

函数

函数调用语法:

SELECT function() from table_name;//表名可省略

单行函数

如contact.length.ifnull

分组函数//做统计使用

一.字符函数

length//获取字节个数

测试例:

SELECT LENGTH('你是一个一个一个一个数据库语句');

upper.lower//转大小写

SELECT UPPER('yajusenpai');

substr//截取字符串

索引从1开始

SELECT SUBSTR('这里是拼接字符串',6);//返回'字符串'

SELECT SUBSTR('这里是拼接字符串',5);//返回'接字符串'

SELECT SUBSTR('这里是拼接字符串',4,5);//返回'拼接'

instr//返回字串第一次出现的索引

SELECT INSTR('全世界无产者,联合起来!','无产者');//返回4,找不到返回0

trim//去除字符串的某些字符

SELECT TRIM(啊 FROM '啊啊啊啊啊啊啊啊啊啊啊资啊啊啊啊啊啊啊啊啊本啊啊啊啊啊啊啊啊啊啊啊家啊啊啊啊啊啊啊啊');

//结果返回'资啊啊啊啊啊啊啊啊啊本啊啊啊啊啊啊啊啊啊啊啊家啊啊啊啊啊啊啊啊'

lpad//左填充剩余字符串

SELECT LPAD('WDNMD',10,'草');//返回'草草草草草WDNMD'

rpad//右填充剩余字符串

SELECT RPAD('WDNMD',10,'草');//返回'WDNMD草草草草草'

replace //替换所有字符串

SELECT REPLACE('以后统治这个世界的是资产阶级','资产阶级','无产阶级');

//返回结果是'以后统治这个世界的是无产阶级'

二.数学函数

round//四舍五入

SELCT ROUND(1.65);//返回2

SELCT ROUND(-1.65);//返回-2

SELCT ROUND(1.657,2);//返回1.65

CEIL//向上取整

SELECT CEIL(1.002)//返回2

SELECT CEIL(-1.002)//返回-1

FLOOR //向下取整

SELECT FLOOR(9.99);//返回9

SELECT FLOOR(-9.99);//返回10

TRUNCATE//截断

SELECT TRUNCATE(1.65,1);//1.6

MOD //取模

SELECT MOD(10,3);//返回1

三.日期函数

NOW()//返回系统日期

CURDATE()//返回不包含时间的日期

CURTIME()//返回不包含日期的时间

YEAR()//获取年,也有获取月,日的函数

MONTHNAME()//获取月,返回对应的名字

STR_TO_DATE('9-13-1999','%m-%d-%y');//将日期格式的字符串转换成指定的格式日期

DATE_FORMAT('2018/6/6','%y年%m月%d日')//将日期转换成字符

DATEDIFF()//返回两个日期相差的时间

%Y:四位年份 %d:日 %s:秒

%y:2位年份 %H:24小时

%m:2位月份 %h:12小时

%c:月份 %i:分钟

测试例:

SELECT * FROM employees WHERE date = STR_TO_DATE('4-3 1992,'%c-%d %Y');

//将日期转换为标准格式进行查询

SELECT DATE——FORMAT(NOW(),'%y年%m月%d日');

四.IF函数

SELECT name,IF(条件表达式,TRUE返回值,FALSE返回值);

测试例

SELECT name,阶级,IF(阶级='无产阶级',无产阶级,小布尔乔亚) FROM person;

五.CASE函数

第一种用法:

SELECT id,money

CASE id

WHEN 1 THEN money*100

WHEN 2 THEN money*110

ELSE money*99

END

FROM list;

第二种用法

SELECT id,money

CASE

WHEN id=1 THEN money*100

WHEN id=2 THEN money*110

ELSE money*99

END

FROM list;

六.分组函数//统计函数

sum,avg,max,min,count//求和,平均值,最大值,最小值,统计数据个数

测试例:

SELECT SUM(salary) FROM employees;

//将employees里面的所有salary值加起来

sum,avg支持INT DOUBLE

max,min能支持字符串,可以比较时间

count是统计非空数据数量

distinct在运算时可实现去重

count变量为* 则可以统计行的总数量(任何一行有数据都会被统计,可以防止因为NULL而未统计)

count变量为1 则也在统计行数量

在MYISAM存储引擎下COUNT()比1高,INNODB中1和相同,都比COUNT(变量名)高

这些函数都会忽略NULL

与分组函数一同查询的字段要求是group by后的字段

测试例:

SELECT SUM(DISTINCT salary) FROM employees;

七.CONTACT函数

字符串处理,提高可读性

语法:

SELECT

column_name1,

CONCAT(column_name2,str,column_name3),column_name4

FROM table_name;

测试例:

SELECT id,concat(name, '得冠军的次数是', win_time) FROM 星际韩宗;

//结果如:输本得冠军的次数是0次

//如果变量为null,则输出结果为:null,不会是:null得冠军的次数是..../输本得冠军的次数是null

CONTACT函数和WHERE混用例

SELECT id,concat(name, '得冠军的次数是', win_time)

FROM 星际韩宗

WHERE NAME NOT = '输本';

//CONTACT函数和WHERE混用例,取了一个叫'妈个鸡'的别名

SELECT id,concat(name, '得冠军的次数是', win_time)

AS 妈个鸡

FROM 星际韩宗

WHERE NAME NOT = '输本';

复杂测试例:

SELECT concat(name, 'TVP的胜率是', tvp_rate,'TVT的胜率是',tvt_rate,'TVZ的胜率是',tvz_rate)

FROM 星际韩宗

WHERE race='人类';

//选取玩人类的星际韩宗,查询他人族内战,对异虫/星灵选手的胜率

八.TRIM//数据库输入脏数据过滤/净化

SELECT trim(name)

FROM 星际韩宗

WHERE id = 20;

//过滤掉查询数据的空格

//TRIM精准净化

//BOTH|LEADING|TRAILING.去除前后/前/后的字符串

SELECT

TRIM( TRAILING '浩二' FROM name )

FROM 下北泽先辈

WHERE id = 21;//去除'田所浩二'尾部的'浩二'

九.REPLACE函数

语法:

UPDATE table_name

SET colunm_name =

REPLACE(column_name,string_find,string_to_replace)

WHERE conditions;

测试例:

UPDATE 下北泽先辈

SET name = REPLACE(name,田所浩二,野兽先辈)

WHERE name='田所浩二';

标签:返回,name,啊啊啊,mysql,字符串,内卷,SELECT,函数

来源: https://blog.csdn.net/qq_46207392/article/details/114065894

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值