我们之所以要用 like 谓词,一般都想实现模糊查询,比如说 name 以 'unmi' 开始、结束或包含 'unmi' 的记录,如下1. select * from person where name like 'unmi%';
2. select * from person where name like '%unmi';
3. select * from person where name like '%unmi%';
Oracle
<select id="showOneStudentByName" parameterClass="String" resultMap="studentORM"﹥
select * from t_stu where s_name like '%'||#name#||'%'
﹤/select﹥
Mysql:
SELECT * FROM user
WHERE username like CONCAT('%', #username#, '%')
SQLServer
SELECT * FROM user WHERE username like '%' + #username# + '%'
注意:SQL语句不要写成select * from t_stu where s_name like '%$name$%',这样极易受到注入攻击。