• MyBatis 模糊查询


    问题描述

    编写SQL,实现根据业务名称,模糊查询业务信息。

    解决方案

    方案1:SQL里实现

    <!-- 通过 projectName 模糊查询数据 -->
        <select id="findByProjectName" parameterType="String" resultMap="BaseResultMap">
            select
            <include refid="Base_Column_List" />
            from project
            where
            <!-- project_name like '%'||#{projectName}||'%' 查询的是全部信息-->
            <!-- project_name like '%#{projectName}%' 报错 -->
            <!-- project_name like '%"#{projectName}"%' 报错-->
            <!-- project_name like '%'||${projectName}||'%' -->
            <!-- project_name like '%${projectName}%' -->
            project_name like CONCAT(CONCAT('%',#{projectName}),'%')
        </select>

    【说明】已测试验证,除了下面的这种方式,可以实现模糊查询

    project_name like CONCAT(CONCAT('%',#{projectName}),'%')

    其余被注释掉的几种写法,均不可以实现!!!

    方案2:Java代码里预处理

    如果在Java代码里事先处理:

    List<ProjectEntity> entityList = projectBiz.findByProjectName("%" + projectName + "%");

    SQL可以使用下面的方式:

    <!-- 通过 projectName 模糊查询数据 -->
        <select id="findByProjectName" parameterType="String" resultMap="BaseResultMap">
            select
            <include refid="Base_Column_List" />
            from project
            where
            project_name like #{projectName}
        </select>
  • 相关阅读:
    linux 错误总结
    linux xampp常见问题
    !WebGL
    !站点列表(无关的站点)
    代码: 瀑布流
    插件:★★★ !!!图片懒加载 lazyload.js 、 jquery.scrollLoading.js
    html调用静态json例子
    !!! jquery mobile常用代码
    国内各类“壳子”浏览器,userAgent 一览
    checkbox的美化(转)
  • 原文地址:https://www.cnblogs.com/miracle-luna/p/10882893.html
Copyright © 2020-2023  润新知