二、mysql中常见函数

herohope 2020-03-27

概念:将一组逻辑语句封装在方法体中,对外暴露方法名

好处:1)隐藏了实现细节

   2)提高代码的重用性

调用:select 函数名(实参列表)【from 表】

特点:1)函数名

   2)函数功能

分类:1)单行函数

    如 concatlengthifnull

   2)分组函数

  功能:做统计使用,又称为统计函数、聚合函数、组函数

一、单行函数

1、字符函数

1) length获取参数值的字节个数

2) Concat拼接字符串

3) Upperlower大小写转换

4) Substrsubstring

  注意:索引从1开始

  #截取从指定索引处后面所有字符

  SELECT SUBSTR(‘abcdefg’,3) AS out_put;

  #截取从指定索引处指定字符长度的字符

  SELECT SUBSTR(‘abcdefghi’,2,4) AS out_put;

5) Instr 返回子串第一次出现的索引,否则返回0

  SELECT INSTR(‘abcdef’,’bcd’) AS out_put;

6) Trim

  SELECT TRIM(‘  abc  ’) AS out_put;

  SELECT TRIM(‘a’ FROM ‘aaaaaahhaaahhaaaa’) AS out_put;

7) lpad用指定的字符实现左填充指定长度

  SELECT LPAD(‘hahaha’,2,’*’) AS out_put;

8) Rpad用指定的字符实现右填充指定长度

  SELECT RPAD(‘hahaha’,2,’*’) AS out_put;

9) replace替换

  SELECT REPLACE(‘hahahaleleleha’,’ha’,’mo’) AS out_put;

2、数学函数

1) Round 四舍五入

  SELECT ROUND(-1.55)

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

SELECT CEIL(1.02);

3) floor向下取整,返回<=该参数的最大整数

4) Truncate截断

  SELECT TRUNCATE(1.69999,1);

5) mod取余

  SELECT MOD(10,-3);

  SELECT 10%3;

3、日期函数

1) now返回当前系统日期+时间

  SELECT NOW();

2) Curdate返回当前系统日期,不包含时间

SELECT CURDATE();

3) CURTIME返回当前时间,不包含日期

  SELECT CURTIME();

4) 可以获取指定的部分,年、月、日、小时、分钟、秒

  SELECT YEAR(NOW()) AS ;

5) str_to_date:将日期格式的字符转换成指定格式的日期

  STR_TO_DATE(‘9-13-1999’,’%m-%d-%Y’)

6) Date_format:将日期转换成字符

DATE_FORMAT(‘2018/6/6’,’Y%m%d’)

二、mysql中常见函数

4、其他函数 

SELECT VERSION();

SELECT DATABASE();

SELECT USER();

5、流程控制函数

1) if函数:if else的效果

2) case函数

  a. Switch case的效果,等值判断

  语法:

    Case  要判断的字段或表达式

    When 常量1  then  要显示的值1或语句;

    When 常量2  then  要显示的值2或语句;

    ...

    Else  要显示的值n或语句n;

    End

    例子:

       SELECT salary AS 原始工资,department_id,

       CASE department_id

       WHEN 30 THEN salary*1.1

       WHEN 40 THEN salary*1.2

       ELSE salary

       END AS 新工资

       FROM employees;

  b. 多重if的效果,区间判断

  语法:

    CASE

    WHEN 条件1  then 要显示的值1或语句1

    WHEN 条件2  then 要显示的值2或语句2

    ...

    Else  要显示的值n或语句n;

    End

    例子:

      CASE

      WHEN salary>2000 THEN ‘A’

      WHEN salary>3000 THEN ‘B’

      ELSE ‘D’

      END AS 工资级别

      FROM employees;

二、分组函数

功能:用作统计使用,又称为聚合函数或统计函数或组函数

  分类:sum求和、avg平均值、max最大值、min最小值、count计算个数

  特点:1)sumavg一般用于处理数值型

     2)maxmincount可以处理任何类型

            3)、分组函数忽略NULL

相关推荐

jiong / 0评论 2020-09-17