Sql DateDiff中的CASE语句(Amazon红移)
我试图在datediff函数中实现CASE语句,但它在“CASE”处或附近抛出了一个Sql DateDiff中的CASE语句(Amazon红移),sql,amazon-redshift,Sql,Amazon Redshift,我试图在datediff函数中实现CASE语句,但它在“CASE”处或附近抛出了一个错误:语法错误 即使使用以下简化查询,也会出现错误: 选择datediff(当1=1时,则为'month'或'month'结束,'2009-01-01','2009-12-31')作为nummonths 无法在函数中包含CASE语句吗?中datediff()的第一个参数。所以,你不能简单地做你想做的事 相反: select (case when 1=1 then datediff(mon
错误:语法错误
即使使用以下简化查询,也会出现错误:
选择datediff(当1=1时,则为'month'或'month'结束,'2009-01-01','2009-12-31')作为nummonths代码>
无法在函数中包含CASE语句吗?中datediff()
的第一个参数。所以,你不能简单地做你想做的事
相反:
select (case when 1=1
then datediff(month, '2009-01-01', '2009-12-31')
else datediff(month, '2009-01-01', '2009-12-31')
end) as nummonths;
我假设这是一个过于简化的代码,因为显然在这个查询的任何版本中都不需要大小写。所以,你不能简单地做你想做的事
相反:
select (case when 1=1
then datediff(month, '2009-01-01', '2009-12-31')
else datediff(month, '2009-01-01', '2009-12-31')
end) as nummonths;
我假设这是一个过于简单的代码,因为显然在这个查询的任何版本中都不需要case
。case在上面的查询中不需要。你想达到什么目的?@RedshiftGuy你是对的,这里的案例只是为了保持最初的结构!在上述查询中不需要Case。你想达到什么目的?@RedshiftGuy你是对的,这里的案例只是为了保持最初的结构!是的,它被简化了,这里使用的案例
只是为了保持相似的结构。非常感谢你的帮助,戈登!是的,它被简化了,这里使用的案例
只是为了保持相似的结构。非常感谢你的帮助,戈登!