mysql 数据库题目 查询Student表中每个学生的姓名和年龄。
查询Student表中每个学生的姓名和年龄。错误答案:1selects.SNAME,FLOOR(((YEAR(curdate())-year(s.SBIRTHDAY))*...
查询Student表中每个学生的姓名和年龄。
错误答案:1select s.SNAME ,FLOOR(((YEAR(curdate())-year(s.SBIRTHDAY))*12 +month(curdate())-month(s.SBIRTHDAY))/12 )周岁
from student s 只精确到月
2 SELECT s.SNAME ,FLOOR((TO_DAYS(NOW())-TO_DAYS(SBIRTHDAY))/365)
from student s 有年份是 366天的
正确答案:1SELECT s.SNAME ,FLOOR((NOW()-s.SBIRTHDAY)/10000000000) 周岁
from student s
求更优解。
例如 今天是2013/4/13 2012 4/13 是 1周岁 2012 4/14 是0周岁 展开
错误答案:1select s.SNAME ,FLOOR(((YEAR(curdate())-year(s.SBIRTHDAY))*12 +month(curdate())-month(s.SBIRTHDAY))/12 )周岁
from student s 只精确到月
2 SELECT s.SNAME ,FLOOR((TO_DAYS(NOW())-TO_DAYS(SBIRTHDAY))/365)
from student s 有年份是 366天的
正确答案:1SELECT s.SNAME ,FLOOR((NOW()-s.SBIRTHDAY)/10000000000) 周岁
from student s
求更优解。
例如 今天是2013/4/13 2012 4/13 是 1周岁 2012 4/14 是0周岁 展开
3个回答
推荐于2017-09-24
展开全部
SELECT DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(SBIRTHDAY, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d')
< DATE_FORMAT(SBIRTHDAY, '00-%m-%d')) AS age from student; 查出精确。。。。自己加名字
< DATE_FORMAT(SBIRTHDAY, '00-%m-%d')) AS age from student; 查出精确。。。。自己加名字
展开全部
SELECT SNAME,DATEDIFF(YEAR,SBIRTHDAY,GETDATE()) as NL
FROM Student
GETDATE() --表示当前时间,MYSQL当前时间是:NOW()还是getdate()?你试下
FROM Student
GETDATE() --表示当前时间,MYSQL当前时间是:NOW()还是getdate()?你试下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
貌似oracle有一个months_between函数,可以直接用的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询