mysql函数

mysql常见函数

1.字符函数

length(显示长度)

concat(拼接字符串)

substr(获取指定长度)

instr(返回输入字段出现的第一次索引)

trim(去除字符串前后的空格或者指定的字符)

upper(大写)

lower(小写)

lpad(左填充)

rpad(右填充)

replace(替换指定字符)

2.数学函数

round(四舍五入)

ceil(向上取整)

floor(向下取整)

truncate(指点小数点的后几位)

mod(取余)

3.日期函数:

now()当前日期加时间

curdate()  当前日期

curtime()  当前时间

year  年

month  月

day 日

hour  小时

minute  分钟

second  秒

STR_TO_DATE  将字符串返回成时间

SELECT STR_TO_DATE('2012.03.23','%Y-%c-%d') as output

#DATE_FORMAT(date,format) 将日期转为字符串

SELECT DATE_FORMAT(NOW(),'%Ynian%myue%dri')

4.其他函数:

version  返回当前数据库版本

database  返回当前使用的数据库

user  返回点用户

5.控制函数

#IF if ELSE

SELECT IF(10>5,'大','小');

SELECT LAST_name,commission_pct,IF(commission_pct is  not null,'有奖金','没奖金')

from employees

#2.case 函数的使用一:switch CASE 的效果

/*案例:查询员工工资:要求

部门号=30,工资为1.1倍

部门号=40,工资为1.2倍

部门号=50,工资为1.3倍

*/

SELECT salary 原始工资,department_id,

CASE department_id

when 30 THEN salary*1.1

when 40 THEN salary*1.2

when 50 THEN salary*1.3

ELSE salary

END as 新工资

from employees

#case 函数的使用二;类似多重if

#查询员工的新工资,如果工资大于两万,显示a级别,大于15000,显示b,大于10000,否则显示渣渣

SELECT LAST_name,salary as 院士工资,

CASE

WHEN salary>20000 THEN 'a级别'

WHEN salary>15000 THEN 'b级别'

when salary>10000 THEN 'c级别'

ELSE '渣渣'

END as 新工资

FROM employees

你可能感兴趣的:(mysql函数)