MySQL学习笔记(4)

  • 日期函数

USE test;
SHOW TABLES;
SELECT NOW();  #获取当前时间,包括年月日时分秒(结果:2020-05-15 14:50:20)
SELECT CURRENT_TIME();  #获取当前时间,只有时分秒(结果:14:54:22)
SELECT CURRENT_DATE();  #获取当前时间,只有年月日(结果:2020-05-15)

#只获取entry_time的年份
SELECT employee_id,employee_name,YEAR(entry_time) FROM employee;

#只获取entry_time的月份
SELECT employee_id,employee_name,MONTH(entry_time) FROM employee;

在这里插入图片描述
在这里插入图片描述

  • 日期转换

  • 格式符:
格式符功能
%Y四位的年份
%y两位的年份
%m月份(01,02,…,11,12)
%c月份(1,2,…,11,12)
%d日(01,02,…,)
%H小时(24小时制)
%h小时(12小时制)
%i分钟(00,01,…,59)
%s秒(00,01,…,59)

1.STR_TO_DATE:
按照指定的日期格式将字符串日期转为对应的日期格式

SELECT STR_TO_DATE('2020-5-15','%Y-%c-%d') AS output;

STR_TO_DATE函数中,字符串日期的格式必须与第二个参数给出的日期格式相匹配。

2.DATE_FORMAT:
将date类型的日期转为任意格式的字符串类型,前后格式不必相互匹配。

SELECT 
	*,DATE_FORMAT(entry_time,"%y年%m月%d日") 
AS 
	入职日期
FROM
	employee;

在这里插入图片描述

  • IF函数

#若expr1为ture,则返回expr2的值,否则返回expr3的值
IF(expr1,expr2,expr3)
SELECT *,IF(bonus_rate IS NULL,"无","有") AS 奖金 FROM employee;

在这里插入图片描述

  • CASE函数

CASE case_value
	WHEN when_value THEN
		statement_list
	ELSE
		statement_list
END CASE;

类似java和c中的switch-case结构

switch(表达式)
{
	case 常量表达式1:语句1
	case 常量表达式2:语句2
	……
	case 常量表达式n:语句n
	default:语句n+1
}

在MySQL中,case_value等同于c中switch_case结构的表达式,when_value等同于常量表达式,statement_list等同于语句,else等同于default。

SELECT
	employee_id,employee_name,branch_company,salary AS 原始工资,department,
CASE department
	WHEN "R&D" THEN
		salary*1.2
	WHEN "Personnel" THEN
		salary*1.1
	ELSE
		salary
END AS 调整工资
FROM 
	employee;

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值