Ibatis的SQL语句Like的问题网上很多都说了。
但是有一个细节。
T1.FIELD2 like '%'||#roomText#||'%' 如下的语句在Mysql下报错。
替换成'%'||?||'%'
查了一下网上资料原来是这样。
资料来自CSDN博客,转载请标明出处:http://blog.csdn.net/gooddasenlin/archive/2009/04/07/4054659.aspx
网上搜了一下ibatis的关于like的使用,相信看到这篇文章的XDJM也应该知道如何解决了 ,我在这里就不重复了,只想补充说明一下:
撇开 '%$xxx$%' 不讲。网上的解决方法如下:
SELECT *
FROM user
WHERE username like '%' || #username# || '%'
其实上面的语句是正对Oracle 的,对于不同数据字符串连接符不一样。现列举mysql和SQLServer如下:
Mysql:
SELECT *
FROM user
WHERE username like CONCAT('%', #username#, '%')
SQLServer:
SELECT *
FROM user
WHERE username like '%' + #username# + '%'
也就是相当于自己在SQL语句里拼接字符%使用Like。#此部分会替换成参数#。