一、常见函数之单行函数

介绍

概念:

  类似于java(python)的方法,将一组逻辑语句封装在方法体中,对外暴露方法名

好处:

  1. 隐藏了实细节;
  2. 提高代码的重用性

语法:

select  函数名(实参列表) 【from 表】;

调用关注:

  1. 叫什么(函数名);
  2. 干什么(函数功能)

分类:

        1.单行函数:如concat、length、ifnull等。
        2.分组函数:做统计使用,又被称为统计函数、聚合函数、组函数

字符函数

length:查询字符字节串长度,utf-8中汉字为3个字节串,gbk中汉字为2个字节串

SELECT LENGTH(join);
SELECT LENGTH(张三丰taijiquan);

concat:拼接字符串

SELECT CONCAT(last_name, ,first_name) FROM employees;

substr【substring】:截取指定索引,下标从1开始

-- substr(string, start, length)
-- 截取从指定索引处后面所有的字符
SELECT SUBSTR(李莫愁爱上了陆展元,7) out_put;

-- 截取从指定索引处指定字符长度的字符
SELECT SUBSTR(李莫愁爱上了陆展元,1,3) out_put;

-- 案例:姓名中首字母大写,其他字符小写然后后用_拼接;
SELECT CONCAT(UPPER(SUBSTR(last_name,1,1)),_,LOWER(SUBSTR(last_name,2))) AS out_put
FROM employees;

 

instr:返回子串第一次出现的索引,如果找不到返回0

SELECT INSTR(下次是哪次,哪次) AS out_put;
SELECT INSTR(下次是哪次,shi哪次) AS out_put;

trim:函数可以移除字符串的首尾信息。最常见的用法为移除字符首尾空格。

SELECT TRIM(          改天是哪天          ) AS out_put;

-- 移除指定的首尾字符,备注:前面的‘aa’是一个字符,如果后面是‘aaaaa改天是哪天aaaaa‘,截取后‘a改天是哪天a‘
SELECT TRIM(a FROM aaaa改天是哪天aaaa) AS out_put;

upper:转换成大写

SELECT UPPER(last_name) FROM employees;

lower:转换成小写

SELECT LOWER(last_name) FROM employees;

-- 案例:姓大写,名小写
SELECT CONCAT(UPPER(last_name),LOWER(first_name)) as 姓名 FROM employees;

lpad:用指定的字符串实现左填充指定长度,如字符没有指定长度,则会进行截取显示

SELECT LPAD(以后是多后,10,*);
SELECT LPAD(以后是多后,2,*);

rpad:用指定的字符串实现右填充指定长度,如字符没有指定长度,则会进行截取显示

SELECT RPAD(以后是多后,10,*);
SELECT RPAD(以后是多后,2,*);

replace:替换,有多个则替换多个

SELECT REPLACE(time will tell,time,替换) AS out_put;

distinct:去重函数

SELECT DISTINCT commission_pct from employees

ifnull:如果参数为null,则输出指定值,sql为isnull

SELECT IFNULL(commission_pct,1) FROM employees

数学函数

round:四舍五入,默认保留一位小数

SELECT ROUND(1.55);
-- 保留两位小数
SELECT ROUND(1.567,2);

ceil:向上取整,返回>=该参数的最小整数

SELECT CEIL(1.02);
SELECT CEIL(1.0);
SELECT CEIL(-1.02);

floor:向下取整,返回<=改参数的最大整数

SELECT FLOOR(1.02);
SELECT FLOOR(1.0);
SELECT FLOOR(-1.02);

truncate:截断

SELECT TRUNCATE(10.999999,1);

mod:

/*
mod(a,b):a-a/b*b
mod(-10,-3): -10 - (-10)/(-3)*(-3) = -1
*/
SELECT MOD(10,-3);
SELECT 10%-3;

rand:获取随机数,返回0~1之间的小数

select truncate(rand(),1)

 

一、常见函数之单行函数

上一篇:Leetcode Longest Substring Without Repeating Characters & 无重复字符的最长子串 解题报告


下一篇:Git配置环境变量