zoukankan      html  css  js  c++  java
  • MySQL基础之常用函数

    数学函数的使用

    常用数学函数

    函数 作用 函数 作用
    ceil() 进一取整 abs() 取绝对值
    floor() 舍掉小数部分 power() 幂运算
    round() 四舍五入 pi() 圆周率
    truncate() 截取小数点后几位 rand()或者rand(x) 0~1之间的随机数
    mod 取余数 sign(x) 得到数字符号
    exp() 计算e的x次方

    用法

    select ceil(1.2);
    select floor(2.9);
    select round(3.56789,2);
    select truncate(3.456789,3);
    select 10 mod 3;
    select id,username,ceil(salary) from user;
    

    字符串常用函数

    --char_length():得到字符串的字符数
    select char_length('abc');
    
    --length():得到字符串的长度(一个中文字符在utf8下占3个长度)
    select length('abc');
    
    --concat(s1,s2,...):将字符串合并成一个字符串(参数里有null最终结果为null)
    select concat('a','b','c');
    
    --concat_ws():以指定分隔符拼接字符串
    select concat_ws('-','a','b','c',null); --null不起作用
    select concat_ws(null,'a','b','c'); --以null作为分隔符结果为null
    
    --upper()|ucase()|lower()|lcase():将字符串转换成大写或者小写
    select upper('hello world'),ucase('hello world'),lower('HELLO WORLD'),lcase('HELLO WORLD');
    
    --reverse():字符串的反转
    select reverse('abc');
    
    --left()|right():返回字符串的前几个字符或者后几个字符
    select left('hello',2),right('hello',2);
    
    --lpad()|rpad():用字符串填充到指定长度
    select lpad('abc',10,'?'); --从'abc'左端用'?'填充到10位
    
    --trim()|ltrim()|rtrim():去掉字符串两端的空格
    select concat('*',trim(' abc '),'*');
    
    --repeat():重复指定的次数
    select repeat('hello',3);
    
    --replace():替换指定的字符串
    select replace('hello king','king','queen'); --将'king'替换成'queen'
    
    --substring():截取字符串
    select substring('abcdef',1,3); --从1开始截取3位,abc
    
    --strcmp():比较字符串
    select strcmp('a','b');
    

    日期时间常用函数的使用

    --返回当前日期
    select curdate(),current_date();
    
    --返回当前时间
    select curtime(),current_time();
    
    --返回当前的日期时间
    select now(),current_timestamp(),sysdate();
    
    --返回日期中的月份和月份的名称
    select month('2017-02-19');
    select month(current_date()),monthname(curdate());
    
    --返回星期几
    select dayname(now());
    
    --返回一周内的第几天(1:星期天,2:星期一,...)
    select dayofweek(now());
    
    --返回一年中的第几个星期
    select week(now());
    
    --返回日期中的年份、月份、天、小时、分钟
    select year(now()),month(now()),day(now()),hour(now()),minute(now()),second(now());
    
    --计算两个日期相差的天数
    select datediff('2017-03-05','2017-03-01');
    

    其他常用函数

    --得到MySQL版本、当前服务器的连接数
    select version(),connection_id();
    
    --得到当前的数据库名
    select database(),schema();
    
    --得到当前登陆的用户
    select user(),current_user(),system_user(),session_user();
    
    --得到上一步插入操作产生auto_increment的值
    select last_insert_id();
    
    --加密
    select md5('king');
    
    --密码加密算法
    select password('root');
    
  • 相关阅读:
    POJ 3348 Cows (凸包面积)
    P4126 [AHOI2009]最小割
    P1903 [国家集训队]数颜色
    P3749 [六省联考2017]寿司餐厅
    CF666E Forensic Examination
    P2336 [SCOI2012]喵星球上的点名
    P1117 [NOI2016]优秀的拆分
    P3747 [六省联考2017]相逢是问候
    CF1062F Upgrading Cities
    P3243 [HNOI2015]菜肴制作
  • 原文地址:https://www.cnblogs.com/huowuyan/p/11492082.html
Copyright © 2011-2022 走看看