MySQL六: 单行函数

单行函数

一、概念规则
  1. 操作数据对象
  2. 结构参数返回一个结果
  3. 只对一行进行交换,且每行返回一个结果等
  4. 可以嵌套
  5. 参数可以是一个列或一个值
二、数值函数
  1. 基本函数
    # 绝对值函数,返回1
    SELECT ABS(-1)
    FROM DUAL;
    

    在这里插入图片描述

  2. 角度与弧度互换函数

    RADIANS(x):将角度转换为弧度

    DEGREES(x):将弧度转换为角度

  3. 三角函数

    参数均为弧度数,可用RADIANS(x) 将角度转换为弧度数

    在这里插入图片描述

  4. 指数与对数

    在这里插入图片描述

  5. 进制函数

    在这里插入图片描述

三、字符串函数
  • 在这里插入图片描述

    注:MySQL中,字符串的我i之是从1开始的。

四、日期和时间函数
  1. 获取日期和时间
    函数用法函数用法
    CURDATE()返回当前日期,只包含年、月、日UTC_DATE()返回世界标准时:年月日(伦敦)
    CURTIME()返回当前时间,只包含时、分、秒UTC_TIME()返回世界标准时:时分秒
    NOW()返回当前系统的日期和时间

    在这里插入图片描述

  2. 日期与时间戳的转换
    函数用法
    UNIX_TIMESTAMP()以UNIX时间戳的显示返回当前时间
    UNIX_TIMESTAMP(date)将date以UNIX时间戳的形式返回
    FROM_UNIX(timestamp)将UNIX时间戳的时间转换为普通格式的时间

    timestamp:时间戳

    在这里插入图片描述

  3. 获取月份、星期、星期数、天数等函数

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  4. 日期的操作函数
    EXTRACT(type FROM date)返回指定日期中特定的部分,type指定返回的值的类型

    extract(提炼),上述函数中type的取值与含义

    type取值含义type取值含义
    MICROSECOND返回毫秒数SECOND_MICROSECOND返回秒和毫秒
    SECOND返回秒数MINUTE_MICROSECOND返回分钟和毫秒
    MINUTE返回分钟数MINUTE_SECOND返回分钟和秒
    HOUR返回小时数HOUR_MICROSECOND返回小时和毫秒
    DAY返回天数HOUR_SECOND返回小时和秒
    WEEK返回第几个星期HOUR_MINUTE返回小时和分钟
    MONTH返回第几个月DAY_MICROSECOND返回天和毫秒
    QUARTER返回哪个季节DAY_SECOND返回天和秒
    YEAR返回日期的年份DAY_MINUTE返回天和分钟
    YEAR_MONTH返回年和月DAY_HOUR返回天和小时

    在这里插入图片描述

  5. 时间和秒钟的转换函数
    函数用法
    TIME_TO_SEC(time)将time转换为秒并返回结果
    SEC_TO TIME(seconds)将seconds转换为含时分秒的时间

    在这里插入图片描述

  6. 计算日期和时间的函数之一
    函数用法
    DATE_ADD(datetime, INTERVAR type)返回与给定日期时间相差INTERVAL时间段的日期时间
    DATE_SUB(datetime, INTERVAR type)返回与给定日期时间相差INTERVAL时间段的日期时间

    type的取值列表

    间隔类型含义间隔类型含义
    HOUR小时YEAR_MONTH年和月(没有年和日)
    MINUTE分钟DAY_HOUR日和小时
    SECONDDAY_MINUTE日和分钟
    YEARDAY_SECOND日和秒
    MONTHHOUR_MINUTE小时和分钟
    DAYHOUR_SECOND小时和秒
    MINUTE_SECOND分钟和秒

    在这里插入图片描述

  7. 计算日期和时间函数之二
    函数用法
    ADDTIME(time1, time2)返回time1加上time2的时间,当time2是数字时,代表秒
    SUBTIME(time1, time2)返回time1加上time2的时间
    DATEDIFF(date1, date2)返回date1 - date2 的日期间隔天数
    TIMEDIFF(time1, time2)返回time1 - time2 的时间间隔
    FROM_DAYS(n)返回从0000年1月1日起,n天后的日期
    TO_DAYS(date)返回日期date距离0000年1月1日的天数
    LAST_DAY(date)返回date所在月份的最后一天的日期
    MAKEDATE(year, n)针对给定年份与天数组合并返回一个新的日期
    MAKETIME(hour, minute, second)将给定的小时、分钟和秒组合成时间并返回
    PERIOD_ADD(time, n)返回YYYYMM加上n个月后的时间

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  8. 日期的格式化与解析
    函数用法
    DATE_FORMAT(date, fmt)按照fmt格式化日期date的值
    TIME_FORMAT(time, fmt)按照fmt格式化时间time的值
    GET_FORMAT(date_type, format_type)返回日期字符串的显示格式
    STR_TO_DATE(str, fmt)按照fmt格式对字符串str进行解析,解析为一个日期

    8.1 GET_FORMAT函数的参数类型

    格式符说明格式符说明
    %Y4位数字表示年份%y2位数字表示年份
    %M全英文月份%m两位数字表示月份,例:01
    %b缩写英文月份%c一位数字表示月份,例:1
    %W全英文周几%w数字表示,0指周日,1指周一
    %a缩写英文周几
    %D英文后缀式月中天数,例:1st,2nd%d两位数字表示月中天数
    %e一位数字表示月中天数
    %H24小时制,两位数字表示,例:01%h12小时制,两位数字表示
    %k24小时制,一位数字表示,例:1%l12小时制,一位数字表示
    %i两位数字表示分钟%S / %s两位数字表示秒
    日期计算
    %j一年中的第几天%U / %u一年中的第几周
    时间制
    %T24小时制显示时间%r12小时制显示时间,带AM/PM
    %pAM / PM
    其它%%%

    在这里插入图片描述

    8.2 GET_FORMAT函数的参数类型

    DATETIMEDATETIME
    USA%m . %d . %Y%h : % i: %s : %p
    JIS%Y-%m-%d%H : %i : %s
    ISO%Y-%m-%d%H : %i : %s
    EUR%d . %m . %Y%H . %i . %s
    INTERNAL%Y%m%d%H%i%s
  9. 流程控制函数

    在这里插入图片描述

    在这里插入图片描述

    注:THEN后面的字符串用单引号,END后面的字符串用双引号

  10. 加密与解密函数

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  11. 查询MySQL相关信息函数
    用法
    ERSION()返回当前MySQLD的版本号
    ONNECTION_ID()返回当前MySQL服务器的连接数
    ATABASE()返回MySQL命令行当前所在的数据库
    SER()返回当前连接MySQL的用户名,返回结果格式为”主机名@用户名“
    HARSET(str)返回字符串str的字符集
    OLLATION(str)返回字符串str的比较规则

    在这里插入图片描述

  12. 其它函数
    用法
    ORMAT(value,n)与ROUND(x,y)用法相同,将value四舍五入后保留n位小数
    NET_ATON(IP value)将以点分隔的IP地址转换为一个数字
    NET_NTOA(value)将数字形式的IP地址转换为以点分隔的IP地址
    ENCHMARK(n,expr)将表达式expr重复执行n次,用于测试MySQL处理expr所需时间
    NVERT(str USING char_code)将字符串str的编码格式转换为char_code
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

e_nanxu

感恩每一份鼓励-相逢何必曾相识

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值