• MySQL---函数


    MySQL---函数

    数学函数

    • abs(n) 绝对值

    select abs(-1), abs(1);
    ```

    • 近似值 ceil(n) 大于等于参数的最小整数 floor(n) 大于等于参数的最大整数

    select ceil(2.4), ceil(-2.4), floor(3.6), floor(-1.2);
    ```

    • 四舍五入 round(n) round(n,m) 四舍五入保留m位小数

    select round(2.5), round(2.5678, 1);
    ```

    • 保留小数 truncate(n,m) 保留m位小数

    select truncate(2.5222, 1);
    ```

    • 开方 sqrt(n) n的m次方 pow(n,m)

    select sqrt(18), pow(2, 3);
    ```

    • 随机 rand() (0,1] 的小数

    select rand();
    ```

    • 随机 1-9 随机 [a,b] truncate(rand()*(b-a+1)+a,0);
      select truncate(rand() * 9 + 1, 0);
      
    • 求余数 mod(n,m) n%m

    select mod(5, 3);
    ```

    • 进制转换 bin(n) n的二进制 HEX(n) 获取16进制的n
    select bin(13), HEX(40);
    



    ***

    字符串函数

    • length(str) 获取字节个数

      • char_length(str) 获取字符个数
      select length('abc12呵呵'), char_length('abc12呵呵');
      
    • substring(str,start,length) 截取从 start 开始,共计 length 个字符

      • substring(str,start) 截取从 start 开始,到末尾
      • 注意:字符串索引从 1 开始
      select substring('abcdef', 1, 2);
      

    select substring('abcdef', 1);
    ```

    • ASCII(str) 获取第一个字符在编码表中对应的整数

      select ASCII('ab');
      
    • concat(str1,str2) 字符串拼接

      select concat('abc', 11, true);
      
    • trim(str) 去除两边的空格

      select trim('   fds f  ');
      
      • ltrim(str) 去除左边的空格
      select ltrim(' ---fsdf--   ');
      
      • rtrim(str) 去除右边的空格
      select rtrim(' ----fafds-   ');
      
    • reverse(str) 翻转字符串

      select reverse('abcdefg');
      
    • lower(str) 转为小写

      select lower('AAAAA');
      
    • upper(str) 转为大写

      select upper('aaaaa');
      

    日期函数

    1. 获取当前时间
      • current_date() curdate() 获取当前年月日
      • current_time() curtime() 获取当前分秒
      • current_timestamp() 获取当前时间戳
      • now() 获取当前年月日时分秒
    2. 获取时间参数
      • year(date) 获取年
      • month(date) 获取月
      • dayofmonth(date) 获取号
      • dayofweek(date) 获取星期 1-7 对应 日-六
      • hour(date) 小时
      • minute(date) 分
      • second(date) 秒
    3. 时间参数设定指定值
      • date_add(date, interval 值 时间单位); 对 date 操作指定的值
    4. 字符串 转 日期
      • sql select str_to_date('2001-11-23 13:12:11', '%Y-%m-%d %H:%i:%s');
    5. 日期 转 字符串
      • sql select date_format(now(), '%Y-%m-%d %H:%i:%s');
    select now(), current_date, current_time, CURRENT_TIMESTAMP;
    select curdate();
    select curtime();
    select now(),
           year(now()),
           month(now()),
           day(now()),
           hour(now()),
           minute(now()),
           second(now()),
           DAYOFWEEK(now());
    
    select date_add(now(), interval 1 second);
    # SELECT STR_TO_DATE('00/00/0000', '%m/%d/%Y');
    
    select str_to_date('2001-11-23', '%Y-%m-%d');
    select str_to_date('2001/11/23', '%Y/%m/%d');
    select str_to_date('2001-11-23 13:12:11', '%Y-%m-%d %H:%i:%s');
    # 字符串 转 日期
    select date_format(now(), '%Y-%m-%d %H:%i:%s');
    # 日期 转 字符串
    
    

    流程控制

    1. if ( 条件 , true 执行语句 , false 执行语句 )
    2. case 语句
    CASE case_value
        WHEN when_value THEN statement_list
        [WHEN when_value THEN statement_list] ...
        [ELSE statement_list]
    END CASE
    
    OR:
    
    CASE
        WHEN search_condition THEN statement_list
        [WHEN search_condition THEN statement_list] ...
        [ELSE statement_list]
    END CASE
    
    select tage,
           case
               when tage <= 18 then '未成年'
               when tage <= 20 then '成年'
               when tage <= 25 then '大哥'
               else '大叔'
               end
    from tab_3;
    
    
    
    select tage,
           case tage
               when 18 then '少年'
               when 20 then '成年'
               else '其他'
               end
    from tab_3;
    
  • 相关阅读:
    1.17 Python基础知识
    反射
    面向对象——类
    异常处理
    面向对象——静态方法、类方法、属性法法,其他特殊方法
    面向对象——继承
    question
    configparser模块
    hashlib模块
    shelve模块
  • 原文地址:https://www.cnblogs.com/javayanglei/p/13305272.html
Copyright © 2020-2023  润新知