1.Like模糊查询有字符串拼接
所有用 str1||str2 拼接的字符串都要改成CONCAT(str1,str2)
'%'||#{zbmc}||'%'
改成CONCAT('%',#{zbmc},'%')
a.fpdm||'-'||a.fphm
改成CONCAT(a.fpdm,'-',a.fphm)
2. 分页查询
oracle中的ROWNUM
SELECT * FROM (SELECT ROWNUM rn,a.* from ( SELECT
A.* from FX_PZ A
) a where ROWNUM<=#{endRow} ) WHERE rn>#{startRow} order by ${sort} ${order}
改成
SELECT A.* from FX_PZ A
order by ${sort} ${order} limit #{startRow},#{rows}
注意limt关键字是最后才用到的。以下条件的出现顺序一般是:where->group by->having-order by->limit
3.Oracle中to_date/to_char函数改成MySql中的函数
to_date(#{kprqs},'yyyy-MM-dd')
改成 str_to_date(#{kprqs},'%Y-%m-%d')
to_char(kprq,'yyyy-MM')
改成date_format(kprq,'%Y-%m')
to_char(kprq,'q')
改成 FLOOR((date_format(kprq, '%m')+2)/3))
2020-06-03补充
SqlServer时间格式化
Select CONVERT(varchar(10), GETDATE