MySQL常见函数

mysql字符转换成decimal mysql字符转换函数_MySQL

1、概念:函数类似于java的方法(将实现某个功能的逻辑语句封装到方法中,对外暴露一个公开的名字,就是方法名)。

好处:
  1.隐藏类具体功能的实现细节
  2.提高代码的重用性

调用:
  SELECT 函数名(实参列表) (实参和形参的 个数、类型必须一致)
  FROM 表(根据需要:函数的参数用到表中的字段)
过程:调用该函数,把函数的逻辑语句执行完,将它的返回值显示出来。

2、分类:

1.单行函数:处理数据使用。传入一个参数,处理完后,最终会有一个返回值
如:CONCAT(str1,str2,…)、LENGTH(str)、IFNULL(expr1,expr2)等

2.分组函数:简称组函数
功能:做统计使用。传入一组参数,最终返回一个值。又称为统计函数、聚合函数。

1.单行函数: 输入一行,输出也还是一行,检索一行处理一次;
2.多行函数(组函数): 输入多行数据,输出是一个结果,检索出来的数据分成组后再进行处理;

根据参数类型不同,可以分为:
字符类函数: 是专门用于字符处理的函数,处理的对象可以是字符或字符串常量,也可以是字符类型的列;

SHOW VARIABLES LIKE ‘%char%’/显示客户端的字符集/

3、length(s)
语法:返回字符串s的长度;若s为null,则返回值为null

#1.length获取参数长度’字节个数’
SELECT LENGTH(‘john’);

3、concat(s1,s2)
将字符串s2连接到字符s1的后面;若s1为null,则返回s2;若s2为null,则返回s1;若s1和s2都为空,则返回null

SELECT CONCAT(last_name,’_’,first_name) AS 姓名 FROM employees;

4、upper、lower
upper(s) 返回字符串s的大写形式
lower(s) 返回字符串s的小写形式

SELECT UPPER(‘john’);#小转大
SELECT LOWER(‘JOHN’);#大转小

5、substr、substring截取字符串
substr(s,i[,j]) 从字符串s的第i个位置开始截取长度为j的子字符串;若省略j,则直接截取到尾部

‘方法的重载名字一样,参数列表不一样’
’MySQL中的索引都是从1开始的’

‘使用1个参数的,截取从指定索引处,后面的所有字符’
SELECT
SUBSTR(‘李莫愁爱上了陆展元’,7) 结果;

mysql字符转换成decimal mysql字符转换函数_字符串_02


‘使用2个参数的,截取从指定索引处,指定长度的字符’

SELECT substr(‘李莫愁爱上了陆展元’,1,3) 结果;

mysql字符转换成decimal mysql字符转换函数_数据_03

6、instr:返回字符串中,子串的起始索引(第一次出现的地方),没有返回0

SELECT INSTR (‘杨不悔殷六侠爱上了殷六侠’,‘殷8侠’) AS out_put;

mysql字符转换成decimal mysql字符转换函数_数据_04


SELECT INSTR (‘杨不悔殷六侠爱上了殷六侠’,‘殷六侠’) AS out_put;

mysql字符转换成decimal mysql字符转换函数_mysql字符转换成decimal_05

7、trim去除前后的空格

SELECT LENGTH( TRIM(’ 张翠山 ') )AS OUt_PUT;–一个汉字代表3个字符

mysql字符转换成decimal mysql字符转换函数_数据_06


‘去除前后的字符’

SELECT TRIM(‘a’ FROM ‘aaaaaa张aaaaaa翠山 aaaaaa’) AS OUt_PUT;

mysql字符转换成decimal mysql字符转换函数_数据_07


‘如果写的是两个字符,就会被系统认为是一个单位,然后系统去匹配相应的字符’

SELECT TRIM(‘aa’ FROM ‘aaaaaaa张aaaaaa翠山 aaaaaaa’) AS OUt_PUT;‘以上中间的都被认为是有效的字符,不能用这个去除’

mysql字符转换成decimal mysql字符转换函数_数据_08

8.lpad (‘要左填充的字符串,指定长度,指定字符’)

SELECT LPAD (‘殷素素’,10,’*’) AS OUT_PUT

mysql字符转换成decimal mysql字符转换函数_mysql字符转换成decimal_09


‘字符串最终的长度就是指定的长度,超过了就会截断。后面的都不会显示’

mysql字符转换成decimal mysql字符转换函数_mysql字符转换成decimal_10

**9.rpad (‘要右填充的字符串,指定长度,指定字符’) **

SELECT RPAD (‘殷素素’,12,‘ab’) AS OUT_PUT

mysql字符转换成decimal mysql字符转换函数_数据_11


‘字符串最终的长度就是指定的长度,超过了就会截断。后面的都不会显示’

mysql字符转换成decimal mysql字符转换函数_字符串_12


**10、replace(s1,s2[,s3]) **

使用s3字符串替换出现在s1字符串中的所有s2字符串,并返回替换后的新字符串;s3的默认值为空字符串

#9.replace ‘替换(全部替换)’‘字符串,要替换的内容,替换的内容’SELECT REPLACE(‘张周芷若无周芷若忌周芷若爱上了周芷若’,‘周芷若’,‘赵敏’) as 结果;

mysql字符转换成decimal mysql字符转换函数_字符串_13