您的位置:首页 > 数据库 > MySQL

MySQL常用的内置函数

2020-04-04 12:07 1141 查看

MySQL常用内置函数
字符串处理函数

*concat(s1,s2,…Sn) 连接s1,s2..Sn为一个字符串

*length(str) 返回值为字符串str 的长度

数值函数

*abs(x) 返回x的绝对值

*round(x,y)返回参数x的四舍五入的有y位小数的值

日期和时间函数

*now() 返回当前日期和时间,

*unix_timestamp(date) 返回date时间的unix时间戳

*date_fomat(date,fmt) 返回按字符串fmt格式化日期date值

*datediff(expr,expr2) 返回起始时间和结束时间的间隔天数

//统计时间戳647583423距离当前时间相差天数(生日天数(不考虑年份))

mysql> select datediff(date_format(from_unixtime(647583423),"2017-%m-%d %h:%i:%s"),now());

其他常用函数

*database() 返回当前数据库名

version() 返回当前服务器版本

user()    返回当前登陆用户名

inet_aton 返回当前IP地址的数字表示 inet_aton("192.168.80.250");

inet_ntoa(num) 返回当前数字表示的ip inet_ntoa(3232256250);

*password(str) 返回当前str的加密版本

*md5(str) 返回字符串str的md5值

– // 查看“慢查询”的配置信息
show variables like “%slow%”;

– // 查看“慢查询”的时间定义
show variables like “long%”;

– //设置“慢查询”的时间定义
set long_query_time=0.2;
– //开启慢日志
set global slow_query_log=‘ON’;

mysql> show variables like ‘%slow%’;
±--------------------------±-------------------------------------------+
| Variable_name | Value |
±--------------------------±-------------------------------------------+
| log_slow_admin_statements | OFF |
| log_slow_slave_statements | OFF |
| slow_launch_time | 2 |
| slow_query_log | OFF |
| slow_query_log_file | /var/lib/mysql/yc-virtual-machine-slow.log |
±--------------------------±-------------------------------------------+

mysql> show variables like “long%”;
±----------------±----------+
| Variable_name | Value |
±----------------±----------+
| long_query_time | 10.000000 |
±----------------±----------+
1 row in set (0.00 sec)
定位执行效率较低的SQL语句

  1. explain select * from table where id=1000;

  2. desc select * from table where id=1000;
    *************************** 1. row ***************************
    id: 1
    select_type: SIMPLE(简单查询,不是多表查询和复杂查询) 可能的值:simple,primary,union,dependent union,union result
    table: php114(表名)
    type: ALL() 可能的值:system,const(最优化,使用了主键或者唯一健),eq_ref,ref.ref_or_null,index_merge
    possible_keys: NULL 显示可能应用在这张表中的索引。如果为null,则表示没有可能的索引
    key: NULL() 实际使用的索引

    key_len: NULL() mysql使用的索引长度
    ref: NULL 显示使用哪个列或者常数与key一起从表中选择行
    rows: 6 mysql执行查询的行数,简单且重要,数值越大越不好,说明没有用好索引
    Extra: 包含mysql解决查询的详细信息
    1 row in set (0.00 sec)

  • 点赞
  • 收藏
  • 分享
  • 文章举报
caiweijiancsdn 发布了48 篇原创文章 · 获赞 0 · 访问量 1023 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: