酷代码 AI
菜单
全部AI  /  自媒体创作  /  AI小红书种草文
服务商

在java开发中,mybatis模糊查询 like 语句该怎么写?

在 MyBatis 中,我们可以使用 `LIKE` 操作符进行模糊查询。一般情况下,模糊查询的 SQL 语句可以写成这样: ```sql SELECT * FROM table_name WHERE column_name LIKE '%keyword%' ``` 在 MyBatis 中,对应的 Mapper XML 文件中的 SQL 语句可以写成这样: ```xml <select id="selectByUserName" resultType="com.example.User"> SELECT * FROM user WHERE name LIKE CONCAT('%', #{name}, '%') </select> ``` 在这个例子中,`#{name}` 是你需要模糊查询的参数,CONCAT函数用来拼接'%'和参数,从而生成类似SQL语句中的'%keyword%'的模糊查询语句。 由于 CONCAT函数在MyBatis 3.5.0及更高版本中被弃用,你可以使用`<choose>`、`<when>`、`<otherwise>`标签来替代。例如: ```xml <select id="selectByUserName" resultType="com.example.User"> SELECT * FROM user WHERE name LIKE <choose> <when test="name != null"> CONCAT('%', #{name}, '%') </when> <otherwise> '%' </otherwise> </choose> </select> ``` 在这个例子中,如果参数`name`为`null`,那么就会生成类似 SQL 语句中的 `'%'` 的模糊查询语句。 [2023-11-09 16:17:25 | AI小红书种草文 | 330点数解答]

相关提问