问题
您正试图使用date_add ()或date_sub ()函数在火花3.0中,但它们返回一个错误的SQL语句:AnalysisException错误消息。
在火花2.4和下面两个函数都会正常工作。
% sql select date_add (cast(“1964-05-23”日期),“12.34”)
导致
你正试图用分数或字符串值作为第二个参数。
在火花2.4和下面,如果第二个参数是一个分级或字符串值,它是强迫的int价值之前date_add ()或date_sub ()是评估。
使用上面列出的示例代码,12.34是转化为价值12之前date_add ()是评估。
在火花3.0中,如果第二个参数是一个分级或字符串值,它会返回一个错误。
解决方案
使用int,短整型,或非常小的整数的第二个参数值date_add ()或date_sub ()3.0函数的火花。
% sql select date_add (cast(“1964-05-23”日期),“12”)
% sql select date_add (cast(“1964-05-23”日期),12)
这两个例子在火花3.0中正常工作。