【发布时间】:2021-12-30 01:35:23
【问题描述】:
我是新来的,有点混乱,所以如果我在这里做错了什么,我会在一开始就原谅自己。
我通常使用 MySQL 或有时使用 Oracle,但现在我必须切换到 Teradata。
我只需要转换这个:
SELECT FLOOR(DATEDIFF(NOW(),`startdate`)/365.25) AS `years`,
COUNT(FLOOR(DATEDIFF(NOW(),`startdate`)/365.25)) AS `numberofemployees`
FROM `employees`
WHERE 1
GROUP BY `years`
ORDER BY `years`;
进入 teradata。
如果有人能帮忙就好了:)
【问题讨论】:
-
Teradata:只需减去日期:SELECT DATE 'date1' - DATE 'date2';
-
这是一个大概的年龄计算,
(current_date - startdate)/365.25,精确的年龄计算:Cast((Months_Between(Current_Date, startdate) / 12) AS smallint)
标签: sql teradata date-arithmetic