MySQL学习记录——팔 函数

文章目录

  • 1、日期函数
  • 2、字符串函数
  • 3、数学函数
  • 4、其它函数


1、日期函数

//获取日期
select current_date();
//获取时间
select current_time();
//获取时间戳, 格式为日期+时间
select current_timestamp();
//获取当前时间, 格式为日期+时间
select now();
//获取参数的日期部分
select date('datetime');//括号内可以直接写now()
//增加日期, 增加部分的可以是年月日, 日期部分可以写date(now())来获取
select date_add('2024-02-15', interval 7 day);
//第一个日期减第二个日期的值, 可以有负值, 可以用date(now()) 
select datediff('2024-02-05', '2024-01-01');

实例

create table tmp( id bigint primary key auto_increment, birthday date not null );

创建好后,插入一些时间类型的数据

insert into tmp (birthday) values ('2001-04-07');
insert into tmp (birthday) values (current_time());
insert into tmp (birthday) values (current_date());
insert into tmp (birthday) values (now());
insert into tmp (birthday) values (current_timestamp());

无论怎么插入,都变成了日期格式

在这里插入图片描述


做一个简易留言表

create table msg( id int primary key auto_increment, content varchar(30) not null, sendtime datetime );

在这里插入图片描述

//统计2分钟内的评论
select content,sendtime from msg where sendtime > date_sub(now(), interval 2 minute);
select content,sendtime from msg where date_add(sendtime, interval 2 minute) > now();

2、字符串函数

//查看字符集, 比如汉字就是utf8, 也可以是一个列名
select charset('');
//拼接字符, 拼接前都转成字符
select concat('', '');
//找到第二个字符串在第一个字符串的起始位置
select instr('', '');
//转为全大写
select ucase('');
//转为全小写
select lcase('');
//从最左边开始取指定长度的字符
select left('', 4);
//从最右边开始取指定长度的字符
select right('', 4);
//获取字符串长度
select length('');
//从str字符串中查找ss, 找到后用rs替换
select replace(str, ss, rs);
//同C语言
select strcmp(str1, str2);

以之前的一个表为例。内容不重要,重点是写法。

select concat('考生姓名: ',name, ', 总分: ', chinese+math+english) msg from exam_result;

在这里插入图片描述

如果length(),括号里的是中文字符,那么就按照一个字符3个字节这样计算,也就是两个汉字的话显示出来的就是6。

//有S的字符串将S替换成D
//替换是拷贝一份, 对拷贝的部分进行替换
select replace(列名, 'S', 'D') from 表名;
//截取部分字符串, 从字符串某个位置开始截取指定长度的字符串, 位置从1开始数
select substring('', 2, 2) from 表名;
//去除左侧空格
ltrim('');
//去除左右两侧空格
trim('');
//去除右侧空格
rtrim('');

3、数学函数

//绝对值
abs();
//数字转成二进制
bin();
//十进制转十六进制
hex();
//进制转换, 从前一个进制转为后一个进制
conv(number, from_base, to_base);
//向下取整
ceiling();
//向上取整
floor();
//保留小数后面的位数, int就是位数
format(number, int);
//模运算, 可进行负数运算
mod();
//随机数
rand();

4、其它函数

//查看用户
user();
//md5摘要(网络CA协议), 生成32位字符串
md5();
//如果val1为null就返回val2, 否则返回val1
//参数类型不局限于int
ifnull(val1, val2);
//加密
password();

结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470924.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视频号直播不出镜快速涨粉保姆级教程(春节大红包)

您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦。💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精通…

ChatGPT高效提问—prompt实践(健康助手)

ChatGPT高效提问—prompt实践(健康助手) ​ 随着社会经济的发展,人们的生活条件不断改善,人们对身体健康也日益重现。让ChatGPT作为健康助手也是一件不错的事。开始之前,还是老样子,先设置角色。 ​ 输入…

win10 环境下Python 3.8按装fastapi paddlepaddle 进行图片文字识别1

###按装 用conda 创建python 3.8的环境,可参看本人python下的其它文章。 在pycharm开发环境下按装相关的模块: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi pip install -i https://pypi.tuna.tsinghua.edu.cn/simple "uvi…

TCP三次握手、四次挥手(简易版)

TCP是面向连接的:在真正通讯之前,必须先建立一条通讯线路,必须先完成连接。 TCP完成连接的过程:(保证通讯线路畅通) 建立连接: 三次握手基本过程 ①客户端首先向服务器发送一个建立连接的…

基于PSO优化的LSTM多输入时序回归预测(Matlab)粒子群优化长短期神经网络时序回归预测

目录 一、程序及算法内容介绍: 基本内容: 亮点与优势: 二、实际运行效果: 三、 部分代码展示: 四、完整代码数据下载: 一、程序及算法内容介绍: 基本内容: 本代码基于Matalb平…

vivado Shift Registers、Dynamic Shift Registers

移位寄存器是一个触发器链,允许数据在固定(静态)数字上传播延迟阶段。相反,在动态移位寄存器中,传播链的长度在电路操作期间动态变化。从“coding”下载编码示例文件示例。 静态移位寄存器元件 静态移位寄存器通常包…

机器学习---HMM前向、后向和维特比算法的计算

1. HMM import numpy as np# In[15]:class HiddenMarkov:def forward(self, Q, V, A, B, O, PI): # 使用前向算法N len(Q) # 状态序列的大小M len(O) # 观测序列的大小alphas np.zeros((N, M)) # alpha值T M # 有几个时刻,有几个观测序列,就有…

Github 2024-02-16 开源项目日报 Top9

根据Github Trendings的统计,今日(2024-02-16统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目4TypeScript项目3Rust项目3Jupyter Notebook项目1JavaScript项目1 Black:不妥协的Pytho…

五、DataX源码分析、性能参数优化

DataX源码分析 一、总体流程二、程序入口1.datax.py2.com.alibaba.datax.core.Engine.java3.切分的逻辑并发数的确认 3.调度3.1 确定组数和分组算法3.2 数据传输 三、DataX性能优化1.关键参数2.优化:提升每个 channel 的速度3.优化:提升 DataX Job 内 Ch…

npm使用国内淘宝镜像(最新地址)

目录 前言 一、命令配置 二、使用cnpm安装 三、常见包地址 四、总结 往期回顾 前言 我们前端程序员在使用国外的镜像源速度很慢并且容易下载失败,有时候需要尝试多次才有可能下载成功,很麻烦,但是可以切换为国内镜像源,下…

【Java多线程】Thread类的基本用法

目录 Thread类 1、创建线程 1.1、继承 Thread,重写run 1.2、实现 Runnable,重写run 1.3、使用匿名内部类,继承 Thread,重写run 1.4、使用匿名内部类,实现 Runnable,重写run 1.5、使用 lambda 表达式…

基于四叉树的图像分割算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ........................................................... Imgs(dx 1 : dx R1, dy 1 …