Mybatis对Oracle、SQL Server、MySQL、DB2的like模糊查询
在MyBatis中,对不同数据库进行LIKE模糊查询时,可以通过在Mapper XML文件中使用数据库特定的LIKE语法来实现。
以下是针对Oracle、SQL Server、MySQL和DB2数据库的LIKE查询的示例:
- Oracle数据库:
<select id="selectByName" parameterType="string" resultType="YourResultType">
SELECT * FROM your_table
WHERE your_column LIKE #{name} || '%'
</select>
- SQL Server数据库:
<select id="selectByName" parameterType="string" resultType="YourResultType">
SELECT * FROM your_table
WHERE your_column LIKE '%' + #{name} + '%'
</select>
- MySQL数据库:
<select id="selectByName" parameterType="string" resultType="YourResultType">
SELECT * FROM your_table
WHERE your_column LIKE CONCAT('%', #{name}, '%')
</select>
- DB2数据库:
<select id="selectByName" parameterType="string" resultType="YourResultType">
SELECT * FROM your_table
WHERE your_column LIKE '%' || #{name} || '%'
</select>
在这些示例中,your_table
是你要查询的表名,your_column
是你要进行模糊查询的列名,YourResultType
是查询结果的类型,name
是传递给查询的参数。
在Java代码中,你会调用这些Mapper方法,并传递相应的参数来执行模糊查询。例如:
List<YourResultType> results = yourMapper.selectByName("example");
这将返回列值包含"example"文本的所有记录。
评论已关闭