Database 仅学生姓名与司法部和学时

Database 仅学生姓名与司法部和学时,database,oracle,rdbms,Database,Oracle,Rdbms,写一个查询以显示学生的名字、加入日期和每门课程的完成日期。将完成日期的别名指定为DOC。根据学生的名字、加入日期和完成日期对结果进行排序 [注:完成日期可以使用司法部和持续时间计算]给您: select s.first_name, c.course_name, s.doj, add_months(s.doj, c.duration) as doc from student s join course c on s.student_id = c.student_id order by

写一个查询以显示学生的名字、加入日期和每门课程的完成日期。将完成日期的别名指定为DOC。根据学生的名字、加入日期和完成日期对结果进行排序

[注:完成日期可以使用司法部和持续时间计算]

给您:

select s.first_name,
  c.course_name,
  s.doj, 
  add_months(s.doj, c.duration) as doc
from student s join course c on s.student_id = c.student_id
order by first_name, doj, doc

问题是有6门以上的课程,每门课程都有不同的持续时间,这可能是真的,但是-我不知道你有哪些表格,它们之间的联系方式,等等。,因此,我发布了我认为可能是您正在寻找的内容。课程表中的持续时间为6,2,4,5,如果我执行上述程序,结果显示doj为2018年3月10日,doc为2018年3月14日,这是不正确的。我希望回答doj为2018年3月10日,doc为2018年5月10日。差异是以天计算的,但我希望以月为单位。我甚至尝试将持续时间乘以30,但在涉及6月、7月等月份时仍会显示错误。如果持续时间以月为单位,则使用“添加月”功能。请看修改后的查询。请,请。。。。。始终使用4位数的年份。我知道你是一名学生,可能还没有出生,但Y2K这个词对你来说意味着什么吗?如果这是一个家庭作业,那么告诉我们你迄今为止都做了些什么?另外,发布create和insert语句以设置基本数据。我已经尝试了doj+持续时间。如果我执行上述程序,课程表中的持续时间为6,2,4,5。结果显示doj为2018年3月10日,doc为2018年3月14日,这是不正确的。我希望回答doj为2018年3月10日,doc为2018年5月10日。差额是以天计算的,但我希望以月为单位。我甚至尝试以30倍的持续时间来计算,但当涉及到6月、7月等月份时,仍然会显示错误