用于统计体验的子查询

时间:2015-12-11 19:30:17

标签: mysql

使用子查询,显示在戴维斯卡尔之前雇佣的所有教职员工的姓名及其服务年限(四舍五入到小数点后0位)。

这是我的问题:

Select CONCAT(FName,' ',LName) As 'Faculty Name' ,faculty.DateHired AS 'Years Of Services'
from faculty
where faculty.DateHired < (select faculty.DateHired from faculty where faculty.FacultyID = 1239)

我想计算服务年数,但输出显示的日期是雇用的(2000-08-22)。

但我希望显示与此类似的输出:

faculty name  | years of experience

Dean joans     19

sean ali       14

我不知道如何做到这一点,请帮助我,我做错了。如果要查看在给定屏幕截图中可以看到的任何数据。谢谢 enter image description here

1 个答案:

答案 0 :(得分:2)

如果您担心的是获得服务年限。

你可以通过更换教师来完成.DateHired AS&#39;多年服务&#39;  至   FLOOR(datediff(current_date(),faculty.DateHired)/ 365)&& 39;服务年限&#39; 所以完整的陈述就像

选择CONCAT(FName,&#39;&#39;,LName)作为&#39;教职员名称&#39; ,FLOOR(datediff(current_date(),faculty.DateHired)/ 365)as&#39;服务年限&#39; 来自教师 faculty.DateHired&lt; (选择faculty.DateHiredHiredHiredHulty in faculty.FacultyID = 1239)