C++ MySQL day6
4.28
日期和时间函数

练习:
1.查询年龄在20岁以上的学生信息
点击查看代码
SELECT * FROM student WHERE TIMESTAMPDIFF(YEAR,birthday,NOW())>20;
2.查询今天过生日的学生信息
点击查看代码
SELECT * FROM student WHERE MONTH(birthday)==MONTH(NOW()) AND DAYOFMONTH(birthday)=DAYOFMONTH(NOW());
3.查询本周过生日的学生信息
点击查看代码
SELECT * FROM student WHERE RIGHT(birthday,5)>RIGHT(DATE_FORMAT(ADDDATE(NOW(),-DAYOFWEEK(NOW())),'%Y-%m-%d'),5) AND RIGHT(DATE_FORMAT(ADDDATE(NOW(),7-DAYOFWEEK(NOW())),'%Y-%m-%d'),5)
二.条件判断函数
1.IF函数
1)IF(条件,表达式1,表达式2)
如果条件满足,则使用表达式1,否则使用表达式2
将学生成绩展示为及格和不及格
点击查看代码
SELECT id,stu_name,course,IF(score>=60,'及格','不及格') score FROM score;
2)IFNULL(字段, 表达式)
如果字段值为空,则使用表达式,否则,使用字段值
示例:将未参加考试的学生成绩展示为缺考
点击查看代码
SELECT id,stu_name,course,IFNULL(score,'缺考') score FROM score;
2. CASE...WHEN 语句
语法
CASE 表达式 WHEN 值1 THEN 表达式1 [WHEN 值2 THEN 表达式2 ...] ELSE 表达式n EN
点击查看代码
SELECT
stu_name,
course,
MAX(CASE course WHEN 'Java' THEN score ELSE 0 END) Java,
MAX(CASE course WHEN 'Html' THEN score ELSE 0 END) Html,
MAX(CASE course WHEN 'Jsp' THEN score ELSE 0 END) Jsp,
MAX(CASE course WHEN 'Spring' THEN score ELSE 0 END) Spring
FROM score
GROUP BY stu_name;
三.其他函数
1.数字格式化函数
FORMAT(X,D),将数字X格式化,将X保留到小数点后D位,截断时要进行四舍五入。
实例:
SELECT FORMAT(1.2353,2)
- 系统信息函数


浙公网安备 33010602011771号