日期类型在之前文章【数据类型】中有描述
传送门:【MySQL篇】数据类型_mysql 数据类型-CSDN博客
函数名称 | 描述 |
|---|---|
current_date() | 当前日期 |
current_time() | 当前时间 |
current_timestamp() | 当前时间戳 |
date(datetime) | 返回datetime参数的部分日期 |
date_add(date,interval d_value_type) | 在date中添加日期或时间,interval关键字后可以是:year,mintue,second,day |
date_sub(date,interval d_value_type) | 在date中减去日期或时间,interval关键字后可以是: year,minute,second,day |
datediff(date1,date2) | 两个日期的差,单位是天 |
now() | 当前日期时间 |







案例1:创建一张生日表,记录生日
mysql> create table tmp( -> id int primary key auto_increment, -> birthday date);
mysql> insert into tmp (birthday) values (current_date());

mysql> create table msg( -> id int primary key auto_increment, -> content varchar(30) not null, -> sendtime datetime);
mysql> insert into msg (content,sendtime) values ('hello1',now()); mysql> insert into msg (content,sendtime) values ('hello2',now());

mysql> select content,date(sendtime) from msg;

mysql> select * from msg where date_add(sendtime,interval 2 minute)>now();

charset(str) | 返回str的字符集 |
|---|---|
concat(string,...) | 连接字符串 |
instr(str,substring) | 返回substring在str中出现的位置,没有返回0 |
ucase(string2) | 转换成大写 |
lcase(string2) | 转换成小写 |
left(string2,length) | 从string2的左边起,取length个字符 |
length(string) | string的长度,单位是字节 |
replace(str,search_str,raplace_str) | 在str中用replace_str替换search_str |
strcmp(string1,string2) | 比较两字符串的大小 |
substring(string,postion,length) | 从string的postion开始,读取length个字符 |
ltrim(string) rtrim(string) trim(string) | 去除前空格或后空格(见示例) |
示例:






案例:


mysql> select charset(ename) from emp;

mysql> select ename,replace(ename,'S','上海') from emp;

mysql> select ename,substring(ename,2,2) from emp;

mysql> select concat(lcase(substring(ename,1,1)),substring(ename,2)) from emp;

函数名称 | 描述 |
|---|---|
abs(num) | 绝对值函数 |
bin(decimal_number) | 十进制转二进制 |
hex(decimal Number) | 转换成十六进制 |
conv(number,form_case,to_base) | 进制转换 |
ceiling(number) | 向上取整 |
floor(number) | 向下取整 |
format(number,decimal_places) | 格式化,保留小数位数 |
rand() | 返回随机浮点数,范围【0.0,1.0) |
mod(number,denominator) | 取模,求余数 |
| |
示例:








mysql> select user();

mysql> create table user( -> id int primary key auto_increment, -> name varchar(20), -> password char(32) not null);
插入数据
mysql> insert into user (name,password) values ('张三',md5('12345')); mysql> insert into user (name,password) values ('李四',md5('21090'));

mysql> select database();


select id,length(string)-length(replace(string,',','')) cnt from strings;