like '%'||#{supplierID}||'%' //这个我管用了(oracle)
like CONCAT('%','${orderSearch.contractNumber}','%')//尝试无效(mysql有效)
like "%"#{name}"%"; //不一定可用 对于不同的版本(sqlserver有效)
Oracle数据库
SELECT * FROM tablename WHERE Columnname like ‘%’ || #keywords# || ‘%’
mysql数据库
SELECT * FROM tablename WHERE Columnname like CONCAT(‘%’, #keywords#, ‘%’)
sqlserver数据库
SELECT * FROM tablename WHERE Columnname like ‘%’ + #keywords# + ‘%’
前几天又看有这个网址了:http://sauzny.iyunv.com/blog/2020138,这位朋友总结的更好:
他里面提到的$符号的使用更简洁: 使用 ${...} 代替 #{...}
SELECT * FROM tableName WHERE name LIKE '%${text}%';
---------------------------------------------------------------------------------
在Mybatis配置文件写SQL语句的时候对于一些比如“<”,">","<>","&"," ' "," " "是不能够识别的,并且会抛异常。一般可以如下改写: