京东云服务器怎么做网站,wordpress如何跳转外部链接,注册查询网站,免费在线网站建设本篇文章主要是对MySQL中常见的内置函数进行了详细解释。例如有日期类函数、字符串类函数、数学类函数等等。希望本篇文章会对你有所帮助。 文章目录 一、日期类函数 1、1 使用详解 1、2 实例演示 二、字符串函数 2、1 使用详解 2、2 实例演示 三、数学函数 四、其他函数 ♂️ 作者Ggggggtm ♂️ 专栏MySQL 标题MySQL中的内置函数 ❣️ 寄语与其忙着诉苦不如低头赶路奋路前行终将遇到一番好风景 ❣️ 一、日期类函数 MySQL 中有许多内置的日期类函数用于处理日期和时间数据。以下是一些常用的日期类内置函数及其功能详解 NOW() 功能返回当前日期和时间。示例SELECT NOW(); CURRENT_DATE() 功能返回当前日期。示例SELECT CURRENT_DATE(); CURRRENT_TIME() 功能返回当前时间。示例SELECT CURRRENT_TIME(); DATE_FORMAT(date, format) 功能将日期按指定格式进行格式化。示例SELECT DATE_FORMAT(2023-12-06, %Y-%m-%d); DAYOFWEEK(date) 功能返回日期对应的星期几1 表示星期日7 表示星期六。示例SELECT DAYOFWEEK(2023-12-06); DATEDIFF(date1, date2) 功能返回两个日期之间的天数差。示例SELECT DATEDIFF(2023-12-06, 2023-12-01); DATE_ADD(date, INTERVAL value unit) 功能在指定日期上加上一定的时间间隔。示例SELECT ADDDATE(2023-12-06, INTERVAL 7 DAY); DATE_SUB(date, INTERVAL value unit) 功能在指定日期上减去一定的时间间隔。示例SELECT SUBDATE(2023-12-06, INTERVAL 7 DAY); TIMESTAMPDIFF(unit, start_datetime, end_datetime) 功能返回两个日期时间之间的差距根据指定的单位如秒、分钟、小时等。示例SELECT TIMESTAMPDIFF(SECOND, 2023-12-01 12:00:00, 2023-12-06 12:00:00); 具体我们也可结合下图进行观看。注意sql语句是不区分大小写的。所以下述实例演示均用小写。 1、1 使用详解 SELECT NOW(); 功能就是查询当前时间精确到年月日 和 时分秒。具体如下图 CURRENT_DATE() 功能即为查询当前日期。日期指的就是年月日。具体如下 CURRRENT_TIME() 功能就是查询当前时间时间指的是时分秒。具体如下图 DATE_FORMAT(date, format) 功能就是date按照我们想要的格式进行输出具体如下图 DATEDIFF(date1, date2) 功能就是计算两个日期的差值date1 - date2最后输出的单位是天。具体如下 DATE_ADD(date, INTERVAL value unit) 功能就是在date上加上我们所需要的时间。unit可以是年、月、日、时、分、秒。具体如下图 DATE_SUB(date, INTERVAL value unit) 这个函数的功能和用法与date_add是相同的。过多也就不再解释。直接看实例 CURRENT_ TIMESTAMP() 功能就是获取当前的时间戳。我们知道时间戳是一直变化的直接看实例 TIMESTAMPDIFF(unit, start_datetime, end_datetime) 前面我们学习了两个日期的差值输出的结果单位为天。现在我们想输出以秒或者其他单位就可以用timestampdiff。具体实例如下 1、2 实例演示 案例1创建一张表记录生日信息。 具体表的创建如下 现在我们使用我们刚刚学到的内置函数进行插入信息。具体如下 我们也可使用current_date()来进行插入具体如下图 案例2创建一个留言表 我们所需要的留言表就是能够记录下用户的留言和其留言的时间。具体表结构如下 现在我们在进行插入数据具体如下图 现在我们想查询所发表评论的日期不需要时间具体如下 想要统计一段时间内帖子的流量例如查询十分钟内所有的评论具体如下 二、字符串函数
2、1 使用详解 我们在mysql中常见的字符串内置函数如下图 很多功能我们在学习语言的时候就已经学过所以我们直接看其具体使用的案例。 charset (str) charset就是用来获取字符串所使用的字符集。查询一下员工表的工号和员工姓名所使用的字符集。具体如下图 在查询员工表中的信息时使用charset函数获取所对应列使用的字符集即可具体如下图 concat (str1, str2, ...) concat功能将我们所需要的字符串拼接到一起使用起来较为简单。具体如下图 当我们所拼接的并不是字符串类型时会自动转换为字符串类型再进行拼接。 instrstringsubstring instr就是查询字串的功能。注意找不到的话返回0能找到就返回在string中的位置。默认的第一给字符的下标为1。具体使用如下图 ucasestr ucase将小写字母转换为大写字母。遇到不是字母的就自动跳过。具体如下 lcasestr lcase将小写字母转换为大写字母。遇到不是字母的跳过。具体如下 leftstrlength与 rightstrlength left 和 right的功能从左或者从右取length个字符输出。相当于就是取字串但是是从第一字符或者最后一个字符开始。具体如下图 lengthstr length是用来求取字符串str的长度的。注意length函数返回字符串长度以字节为单位。如果是多字节字符则计算多个字节数如果是单字节字符则算作一个字节。比如字母数组算作一个字节中文表示多个字节数与字符集编码有关utf-8中的一个中文占3个字节。具体如下图 replacestrsearch_strrepalce_str的功能先在str中进行查找找到的话就进行替换。不再过多解释。 strcmpstr1str2和 substringstrposlength相信对大家来说都是再熟悉不过了。我们接下来看一下ltrim、rtrim、trim的使用。 其中trimstr是去除str两侧的空格。ltrimstr是去除str左侧的空格rtrimstr是去除str右侧的空格具体如下 2、2 实例演示 要求显示student表中的信息显示格式“XXX的语文是XXX分数学XXX分英语XXX分 我们现在所使用的表如下 题目的要求就是将所有考生的信息格式化输出。这时候可用到concat来拼接字符串。具体如下 求表中学生姓名占用的字节数 所占用的字节数我们就可以用lengthstr来求单位就是字节。具体如下图 将EMP表中所有名字中有S的替换成上海 EMP表是员工表具体如下图 我们现在需要做的是将EMP表中的ename中带有S的替换成’上海‘。可以直接用replace就是先查询再替换。具体如下图 截取EMP表中ename字段的第二个到第三个字符 题目的要求就是找字串。我们可以直接用substringstrposlength进行求取。具体如下图 以首字母小写的方式显示所有员工的姓名 首先我们需要得到ename的首字母然后再将它变成小写。最后在与剩余的部分进行拼接即可。具体如下图 注意substringstrposlength省去第三个参数时默认就是截取到字符串末尾。 三、数学函数 mysql中常用到数学类的内置函数如下图 其中数学函数的使用较为简单。我们这里就不再举实例演示了。直接看一下其用法即可。 absnum求绝对值 binnum十进制转二进制 注意在转换小数时默认只会转换整数部分小数部分并不进行转换。 hexnum十进制转十六进制 注意上述的16转换为十六进制时并不是转换成了十而是十六进制的1、0。 convnumfrom_baseto_base将 num 从 from_base 进制转换为 to_base 进制 floornum向下取整ceilingnum向上取整 相信这两个函数大家并不陌生。如果搞不清楚建议画一条竖线进行标注。我们直接看使用 format(numn) 格式化num保留n为小数 rand生成随机之范围[ 0.01.0) rand生成的随机数是有范围的。但是我们可以对生成的结果进行算术运算得到我们想要的随机值范围。假如我们想要生成的随机数单位为0~100。具体如下图 modnum1,num2取模求余 四、其他函数 user user函数功能用于获取mysql连接的当前用户名和主机名。具体如下图 database database函数用于显示当前正在使用的数据库具体如下图 ifnullval1 val2 ifnull函数与C语言中的三目操作符 :? 很相似。ifnullval1 val2功能是如果val1为null返回val2否则返回val1的值。具体如下 md5与password md5与password是用于加密和处理用户密码的常见函数。这两个函数可以帮助保护用户密码的安全性。具体详细细节就不再过多解释我们直接看起用法