我正在尝试获取连续的最大日期。 MAX
和 Greatest
两个函数都返回错误:
SEL Max(date1,date2,date3...)
SELECT Failed. 3706: Syntax error: expected something between a string or a Unicode character literal and ','.
SEL Greatest(date1,date2,date3...)
SELECT Failed. 9881: Function 'GREATEST' called with an invalid number or type of parameters
如何解决这个问题? 谢谢
最佳答案
是的,这很愚蠢,LEAST
和 GREATEST
不适用于日期/时间(在 16.10 中修复)。
作为一种解决方法,您可以将其转换为整数:
SEL cast(GREATEST(cast(date1 as int)
,cast(date2 as int)
,cast(date3 as int)
...) as date)
希望没有 NULL,否则额外的 COALESCE/NULLIF 会变得很难看
关于sql - Teradata:如何获得连续最大的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48783529/