MySQL常用的一些简单函数

MySQL常用的一些简单函数

字符函数

  1. length 获取参数字节个数

    • select length(“字符”);

    • 字符情况

      字符类型UTF-8GBK
      字母11
      汉字32
  2. concat 拼接字符串

    • select concat(第一段,第二段,第三段) from 表名;
  3. upper 将字母转换为大写

    • select upper(“字符串”);
  4. lower 将字母转换为小写

    • select lower(“字符串”);
  5. substr/substring 截取字符串

    • select substr(“字符串”,截取位置); 截取索引后所有字符
    • select substr(“字符串”,截取位置,截取位数); 截取索引后指定长度字符
    • mysql语言中,索引开始位置是1
  6. instr 查找字符索引位置

    • select instr(“字符串”,“需要查找的字符”);
    • 只返回第一次出现的所需字符串的索引,未找到显示0
  7. trim 去除字符串前后字符

    • select trim(“所需去除字符” from 字符串");

    • 若所需去除前后空格,可直接select trim(“字符串”);

  8. lpad 左填充,若不足则去掉后面内容

  • select lpad(“字符串”,指定长度,“填充内容”);
  1. rpad 右填充,若不足则去掉后面内容

    • select rpad(“字符串”,指定长度,“填充内容”);
  2. replace 字符的替换

    • select replace(“字符串”,“想替换的字符”,“替换字符”);
    • 会导致全部替换

数学函数

  1. round 四舍五入

    • select round(数字);

    • select round(数字,小数点后保留位数);

  2. ceil 向上取整

    • select ceil(数字);
    • 返回>=该参数的最小整数
  3. floor 向下取整

    • select floor(数字);

    • 返回<=该参数的最小整数

  4. truncate 截断

    • select truncate(数字,小数点后截断位数);
  5. mod 取余

    • select mod(a,b); <=>select a%b;
    • 运算公式:a - a/b * b

日期函数

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

    • select now();
  2. curtate 返回当前系统日期

    • select curtate();
  3. curtime 返回当前时间

    • select curtime();
  4. 获取指定的部分:年、月、日、时、分、秒

    • select year(时间);

    • select month(时间); 阿拉伯数字

    • select monthname(时间); 英语全称

  5. str_to_date 将字符通过指定格式转化为日期

    • select str_to_date(“2000-03-12”,"%Y-%c-%d");
    序号格式符功能
    1%Y四位的年份
    2%y俩位的年份
    3%m月份(01,02,03…)
    4%c月份(1,2,3…)
    5%d日(01,02,03…)
    6%H小时(24小时制)
    7%h小时(12小时制)
    8%i分钟
    9%s
  6. date_format 将日期转化为字符

    • select date_format(“2000-9-21”,"%y-%m%d");
  7. datediff 返回俩个日期相差的天数

    • select datediff(a,b);

其他函数

  1. select database();
  2. select user();
  3. select version();

分组函数

  1. max 最大值
  2. min 最小值
  3. avg 平均值
  4. sum 和
  5. count 计算个数
    • select count(字段); 统计该字段非空个数

    • select count(*); 统计结果集的行数

      语法:
      select 函数(字段) from 表名;
      PS:
      max、min、count 处理任何数据类型
      avg、sum 仅能处理数值型

        分组函数忽略NULL值
        都可以搭配distinct(去重)使用
        语法:
        	select 函数(distinct 字段) from 表名;
      

流程控制函数

  1. if 函数

    • select if(a, b, c);

    • a代表判断要求

    • b代表一种可能

    • c代表另一种可能

  2. case 函数

    • 类似于 switch···case···

         case 要判断的字段或表达式
         when 常量1 then 要显示的值1或语句1
         when 常量2 then 要显示的值1或语句2
         ......
         else 要显示的值n或语句n
         end;
      
    • 类似于多重if

      case 
      when 条件1  then 要显示的值1  (语句1;)
      when 条件2 then 要显示的值2 (语句2;)
      ......
      else 要显示的值n或语句n
      end;
      

PS:函数直接可以嵌套使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值