支持转化的函数 - 只支持查询接口 - 不支持子查询,复杂sql 转换失败自行使用databaseId=xxx 处理对应的sql

当databaseId = postgresql 的时候,部分mysql的函数在postgresql不兼容
下面列一下支持的函数

IFNULL 转化为了 COALESCE
例子:IFNULL(acolumn,bcolumn) ===> COALESCE(acolumn,bcolumn)

YEAR 转化为 to_char(column,"YYYY")
例子:YEAR(column) ===> to_char(column,"YYYY")

MONTH 转化为 to_char(column,"MM")
例子:YEAR(column) ===> to_char(column,"MM")

DATE_FORMAT 转化为 to_char
由于mysql 中的DATA_FORMAT不能完全转化为to_char,因为 DATA_FORMAT 支持星期%a %A等
%a:表示星期的缩写,例如 Sun 到 Sat。
%A:表示星期的全称,例如 Sunday 到 Saturday。
%b:表示月份的缩写,例如 Jan 到 Dec。
%B:表示月份的全称,例如 January 到 December。
但是to_char不支持星期的转化,只DATE_FORMAT中'%Y-%m-%d %H:%i:%s'
例子:DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s')===> to_char(now(),'YYYY-MM-DD HH24:MI:ss')
例子:DATE_FORMAT(now(),'%Y-%m-%d')===> to_char(now(),'YYYY-MM-DD')
如果使用%a,%A,%b,%B的不支持转化,只能自己去改sql了。
文档更新时间: 2024-08-20 15:40   作者:朱灿奕