MySQL(4):内置函数使用----字符串函数以及其他函数

MySQL(4):内置函数使用----字符串函数以及其他函数

一、字符串函数----concat

concat():表示将字符串进行连接(将多个字符串合并为一个字符串)
select concat(字段1,字段2,...) from 表名;

image

image

将拼接的字段中间用逗号隔开
select concat()括号内添加逗号,逗号属于字符,需要加单引号

image

将拼接的字段中间用逗号隔开,还可以使用concat_ws()函数,只需要加一个逗号即可

image

在mysql中,使用concat()函数拼接字符串的过程中,
如果拼接的字段当中有值为null,那么拼接的结果就为null

image

在mysql中,使用concat_ws()函数拼接字符串的过程中,
如果拼接的字段当中有值为null,会自动排除null

image

二、判断函数

image

image

image

在mysql中,使用concat()函数拼接字符串的过程中,
如果拼接的字段当中有值为null,那么拼接的结果就为null

根据空值判断,我们可以通过ifnull()函数来排除拼接中的null
select concat(ifnull(字段1,','),ifnull(字段2,','),..) from 表名;

总结:

如果不想让结果为null,解决方法如下:

方法一:使用ifnull函数,如果是null将其置为’'空字符串
select concat(ifnull('1',','),ifnull('2',','),ifnull('3',',')...);

方法二:使用concat_ws函数,指定有分隔符的字符串连接

concat_ws(分隔符,参数1,参数2,…参数n)与CONCAT(参数1,参数2,…参数n)
两个函数的区别:
(1)concat_ws():表示concat with separator,即有分隔符的字符串连接
(2)两个最重要的区别就是,concat()函数,拼接参数中存在null直接返回null,
而concat_ws()函数在执行的时候,不会因为null值而返回null

三、replace函数

用 xxx 替换 abcdefghi 中的字符串 cde
select replace('abcdefghicde','cde','xxx');

举例:

image

将name中的’乐‘字换成’月‘字

image

三、日期函数----substring()

image

四、数值计算函数

round() 取小数点位数 
floor() 向下取整
rand()  随机生成一个[0,1)的随机数
round() 取小数点位数

image

floor() 向下取整

image

rand() 随机生成一个[0,1)的随机数

image

五、limit限制语句

两种用法:
	limit m:从查询结果中挑选前面的m条数据
	limit m,n:从第m条开始取,取n条数据

用途:
    大数据中通常用于对返回的数据进行限制,防止大量数据传入client端造成假死。
    前端开发用来做分页查询

六、条件判断函数

判断逻辑:
	语法: 
		if(boolean testCondition, T valueTrue, T valueFalseOrNull)
	返回值: T
	说明:
		当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull
		在mysql中,0表示false,1表示true

举例:
image

条件判断函数
条件判断函数:case when
语法: case when a then b [when c then d]* [else e] end
返回值: T
说明:如果a为TRUE,则返回b;如果c为TRUE,则返回d;否则返回e
select case when sal>2000 then ENAME else '小于2000' end from emp;

举例:

image

image

image

七、排序---order by

使用order by 子句排序查询结果
select column1, column2. column3..from  表名;order by column asc|desc
		
注意:
    Order by 指定排序的列,排序的列即可是表中的列名,也可以是select 语句后指定的列名。
    Asc 升序、Desc 降序
    ORDER BY 子句应位于SELECT语句的结尾(务必在limit之前)

posted @ 2022-01-13 20:42  阿伟宝座  阅读(196)  评论(0)    收藏  举报