基于dob的SQL Age计算

时间:2015-01-21 04:03:42

标签: sql oracle11g

我的代码在某种程度上正在工作,但它没有给我分配所需的输出,我不确定我的代码有什么问题。如果有人能告诉我,我会非常感激。不知道为什么第三个也完全错了。

它看起来像什么:

enter image description here

它看起来像什么: enter image description here

SELECT s_first||' '||s_mi|| '. '||s_last AS "Full Name", s_dob AS "Date of Birth", TRUNC(MONTHS_BETWEEN(SYSDATE, s_dob)/12,2) AS "Age"
FROM student
WHERE s_dob LIKE '%86%'
ORDER BY s_dob;

1 个答案:

答案 0 :(得分:2)

除了戈登提到的,使用"喜欢"在日期字段上,您没有问题。你表现为错误的答案确实是正确的 - 对于今天的日期。事实上,如果当前日期是2014年9月4日或5日,那么您显示正确的答案只能是正确的。(假设" 7.75"您显示实际上是" 27.75&# 34。)

您似乎试图匹配去年生成的报告的结果。