目录
一、日期函数
二、字符串函数
三、数学函数
四、 其他函数
一、日期函数
current_date() | 当前日期 |
current_time() | 当前时间 |
current_timestamp() | 当前时间戳 |
date(datetime) | 返回datetime的日期部分 |
date_add(date,interval d_value_type) | 在date中添加时间/日期 interval 后的数值单位可以是 day,month,year,hour,minute,second |
date_sub(date,interval d_value_type) | 在date中减去时间/日期 interval 后的数值单位可以是 day,month,year,hour,minute,second |
datediff(date1,date2) | 返回连个日期的差,单位天数 |
now() | 当前日期时间 |
- 获得年月日
- 获得时分秒
- 获得时间戳
- 在日期的基础上加时间
- 在日期的基础上减时间
- 计算两个日期之间相差多少天
二、字符串函数
charset(str) | 返回字符串字符集 |
concat(str1,...) | 连接字符串 |
instr(string,substring) | 返回substring在string中出现的位置,没有返回0 |
ucase(str) | 转换成大写 |
lcase(str) | 转换成小写 |
left(str,length) | 从str中的左边起取length个字符 |
right(str,length) | 从str中的右边起取length个字符 |
length(str) | string的长度,单位字节 |
replace(str,search_str,replace_str) | 将str中的search_str替换成replace_str |
strcmp(str1,str2) | 比较字符串大小 |
substring(str,postion [,length]) | 从str的position开始,取length个字符 |
ltrim(str) / rtrim(str) / trim(str) | 去除前空格 / 去除后空格 / 去除两边的空格 |
- 取出表中某一列的字符集
select charset(name) from students; // 取出学生中的姓名列的字符集
- 格式化打印表中信息 ,如 ‘xxx 的总分为 xx 分’
select concat(name, ' 的总分为', math + chinese + english, '分') from students;
- 获取学生姓名的第一个字
select substring(name, 1, 1) from students;
- 以首字母小写的方式显示所有员工的姓名
select concat( lcase( substring( name, 1, 1) , substring( name, 2))) from students;
-
将 表中所有名字中有 S 的替换成 ' 上海 '
replace(name, 'S', '上海');
三、数学函数
abs(number) | 取绝对值 |
bin(decimal_number) | 十进制转二进制 |
hex(decimal_number) | 十进制转十六进制 |
conv(number, from_base, to_base) | 进制转换,从from_base进制转换成to_base进制 |
ceiling(number) | 向上取整 |
floor(number) | 向下取整 |
format(number, decimal_places) | 格式化,保留小数位数 |
rand() | 返回随机浮点数,范围[0.0,1.1) |
mod(number, denominator) | 取模 |
- 取绝对值
- 向上取整 --- 取比当前数大的最近整数
- 向下取整 --- 取比当前数小的最近整数
- 保留两位小数(小数四舍五入)
- 产生随机数
四、 其他函数
- user() 查询当前用户
-
md5(str) 对一个字符串进行 md5 摘要,摘要后得到一个 32 位字符串
-
database() 显示当前正在使用的数据库
- password()函数,MySQL数据库使用该函数对用户加密
- ifnull( al1, val2) 如果val1为null,返回val2,否则返回val1的值