【MySQL】内置函数

本文介绍了MySQL中的内置函数,包括日期时间处理(如current_date和datediff)、字符串操作(如concat和instr),以及数学和安全相关函数(如user(),database(),password()和ifnull)。这些函数有助于在数据库管理中进行高效的数据操作和验证。
摘要由CSDN通过智能技术生成

1. 内置函数

时间函数
在这里插入图片描述
current_date() 表示 当前日期(年月日)

current_time() 表示 当前时间(时分秒)

current_timestamp() 表示 当前时间戳(以年月日、时分秒的形式表现出来)

now() 表示 获取当前日期时间

date(datetime) 在设定的时间中 提取对应的日期

将 now函数 放入 date中 ,相当于输入当前 日期时间
可直接输出 当前日期 ,达到 与current_date 相同的效果

在日期基础上加(时间或日期)
date_add(date,interval d_value_type) (interval后的数值单位 可以是 year minute second day)
输入 select date_add(‘2023-02-25’,interval 10 day);
表示 在 2023-02-25 日期的基础上 添加 10 天
最终 输出 2023-03-07

在日期基础上减去(时间或日期)
date_sub(date,interval d_value_type) interval后的数值单位 可以是 year minute second day

输入 select date_sub(now(), interval 10 minute);
表示 在 当前日期时间 基础上 减去 10分钟
最终 输出 2023-10-27 18:16:39

datediff(date1,date2)
计算两个日期之间相差多少天
用date1减去date2 ,返回正天数
若date2大,则返回负天数

2. 字符串函数

在这里插入图片描述
输入 select charset(‘abc’); 发现对应的编码格式为utf8

输入 sekect concat(‘a’,‘b’); 将字符a与字符b连接起来,形成ab

instr(string,substring) 返回substring 在string中出现的位置,没有返回
判断bc在abc中的位置,abc字符串的起始位置为1,由于第二个字符b处 就检测到bc存在,所以返回b所在位置 2

使用 ucase ,将abc 字符串 从小写转为大写

使用 lcase ,将abc 字符串 从 大写转为 小写

left(string,length) 从string字符串的左边起 取length个字符
如:在abcdef字符串中 取4个字符,成为abcd

length(string) 求字符串的长度
如:abcde字符串 长度为5

处于uft8编码格式下,一个汉字看作三个字节
abc 三个字符各占用一个字节
所以最终返回9个字节

将当前表中 名字 带有s的 替换为上海

replace (str,search_str,replace_str) 即 将str中的search_str 替换成 replace_str
输入 select replace(ename,‘S’,‘上海’) from emp; 将emp表中的ename 含有S的 全部替换成上海

substring(str,postion,length) 即从str的postion开始 取length个字符
输入 select substring(ename,2,2) from emp; 截取emp表中ename字段的第二个到第三个字符
由于字符串下标从1开始,所以第2个字符 就要从2开始,共截取两个字符

ltrim(string) 去除左侧的空格

rtrim(string) 去除右侧的空格

trim(string) 将左侧和右侧的空格都去除

3. 数学函数

在这里插入图片描述

4. 其他函数

输入 select user() 查询当前用户
root为用户名 , localhost为用户主机

输入 select database() 查询当前在那个数据库中

输入 select password( 密码) ,mysql 会使用 password 函数 帮助形成 加密后的结果

ifnull(val1,val2) 如果val1为null,则返回val2 否则返回 val1的值
如:ab 不为空,则返回ab

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值