学生表信息

40. 查询各学生的年龄,只按年份来算
注:只按年份来算,即不管月日是否达到新的一岁,年份到了就算增加了一岁
SELECT
*,
(YEAR(NOW()) - YEAR(sage)) AS age
FROM student;

41. 按照出生日期来算,当前月日 < 出生年月的月日则年龄减一,计算每个学生的年龄
SELECT
*,
TIMESTAMPDIFF(YEAR,sage,NOW()) AS age
FROM student;

42. 查询本周过生日的学生
SELECT
*
FROM student
WHERE WEEK(sage)=WEEK(NOW());

记录较少,当时执行时确实没有本周过生日的学生
43. 查询下周过生日的学生
SELECT
*
FROM student
WHERE WEEK(sage)=WEEK(NOW()) + 1;

记录较少,当时执行时确实没有下周过生日的学生
44. 查询本月过生日的学生
SELECT
*
FROM student
WHERE MONTH(sage)=MONTH(NOW());

记录较少,当时执行时确实没有本月过生日的学生
45.查询下月过生日的学生
SELECT
*
FROM student
WHERE MONTH(sage)=MONTH(NOW()) + 1;

记录较少,当时执行时确实没有下月过生日的学生
当时执行时是9月,如果是后三月,即查12月过生日的则是有记录的
SELECT
*
FROM student
WHERE MONTH(sage)=MONTH(NOW()) + 3;

学生年龄算法探析:按年月计算与未来生日预测
本文探讨了四种不同的计算学生年龄的方法:按年份精确计算、出生日期精确计算、本周、下周及未来特定月份的生日预测。展示了SQL查询实例,并强调了在不同场景下的年龄计算策略。
961

被折叠的 条评论
为什么被折叠?



