SELECT MONTH(NOW());
SELECT MONTHNAME(NOW()); -- 显示英文的月
SELECT DAY(NOW());
SELECT HOUR(NOW());
SELECT MINUTE(NOW());
SELECT SECOND(NOW());
-- STR_TO_DATE(str,format) 将字符按指定的格式转换成日期类型
SELECT STR_TO_DATE('1991-2-20','%Y-%m-%d') AS out_put;
-- 查询入职日期为 1992-4-3 日的员工信息
SELECT * FROM employees WHERE hiredate='1992-4-3';
SELECT * FROM employees WHERE hiredate=STR_TO_DATE('4-3-1992','%c-%d-%Y');
-- DATE_FORMAT(date,format) 将日期格式转换成字符
SELECT DATE_FORMAT(NOW(),'%Y 年%m 月%d 日');
-- 查询有奖金的员工名和入职日期(XX 年 XX 月 xx 日)
SELECT last_name,DATE_FORMAT(hiredate,'%Y 年%m 月%d 日') FROM employees WHERE
commission_pct IS NOT NULL;
-- 四:流程控制函数
-- `IF`(expr1,expr2,expr3) if else 的效果
SELECT IF(10>5,'大','小');
SELECT last_name,commission_pct,IF(commission_pct IS NULL,'没有奖金,呵呵','有奖金,嘻嘻
') 备注 FROM employees;
-- CASE
/*
case 要判断的值或表达式
when 常量 1 then 要显示的值 1 或语句 1;
when 常量 2 then 要显示的值 1 或语句 2;
...
else 要显示的值 n 或语句 n;
end
*/
/*
案例:查询员工工资,要求
部门 id=30,显示的工资为 1.1 倍
部门 id=40,显示的工资为 1.2 倍
部门 id=50,显示的工资为 1.3 倍
评论0