有個需求是:取數據的同期值(年-1) , 並且這個sql要動態切換數據源(同時支持HANA 及 TeraData數據庫)
搜了下HANA的文檔 , 用 ADD_YEARS( <日期> , 1 )
搜了下TeraData的文檔 , 用 <日期> + INTERVAL 1 YEAR
但HANA不支持INTERVAL , 試試TD是否支持ADD_YEARS
繼續查TD的文檔,發現確實沒有ADD_YEARS ... 但是有ADD_MONTHS !!!
注意我圈出來的重點,連文檔裏寫 加13年 都用 ADD_MONTHS( <日期> , 12 * 13)
結論 : 用 ADD_MONTHS(<日期>,12*1) 取同期值,可以完美同時支持 TD/HANA
TeraData-INTERVAL 鏈接
https://docs.teradata.com/reader/~_sY_PYVxZzTnqKq45UXkQ/m7AcE_9iy4Sg45ddDvOZvg
TeraData-ADD_MONTHS鏈接
https://docs.teradata.com/reader/kmuOwjp1zEYg98JsB8fu_A/eKLquFPM6dq5ihpOorU9Pg
HANA-ADD_YEARS鏈接