zoukankan      html  css  js  c++  java
  • mybatis 模糊查询 like的三种方式

    第一种

    public void selectBykeyWord(String keyword) {
      String id = "%" + keyword + "%";
      String roleType = "%" + keyword + "%";
      String roleName = "%" + keyword + "%";
      userDao.selectBykeyWord(id,roleName,roleType);
    }
    在Dao层指定各个参数的别名

    List<RoleEntity> selectBykeyWord(@Param("id") String id,@Param("roleName") String roleName,@Param("roleType") String roleType);

    mapper.xml中

    <select id="selectBykeyWord" parameterType="string" resultType="com.why.mybatis.entity.RoleEntity">
      SELECT
        *
      FROM
        t_role
      WHERE
        role_name LIKE #{roleName}
        OR id LIKE #{id}
        OR role_type LIKE #{roleType}
    </select>


    执行出来的SQL语句:

    SELECT * FROM t_role WHERE role_name LIKE '%why%' OR id LIKE '%why%' OR role_type LIKE '%why%';

    第二种

    CONCAT()函数

    MySQL的 CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一

    CONCAT(str1,str2,...)

    List<RoleEntity> selectBykeyWord(@Param("keyword") String keyword);

    <select id="selectBykeyWord" parameterType="string" resultType="com.why.mybatis.entity.RoleEntity">
      SELECT
        *
      FROM
        t_role
      WHERE
        role_name LIKE CONCAT('%',#{keyword},'%')
      OR
        id LIKE CONCAT('%',#{keyword},'%')
      OR
        role_type LIKE CONCAT('%',#{keyword},'%')
    </select>

    第三种

    Mybatis的bind

    <!-- 按条件查询用户 -->
    <select id="searchData" resultMap="BaseResultMap">
      <bind name="pattern" value="searchData + '%'" />
      select
        <include refid="Base_Column_List" />
      from user
        where (name like #{pattern,jdbcType=VARCHAR} or login_name like #{pattern,jdbcType=VARCHAR}) and login_name != #{loginName,jdbcType=VARCHAR}
    </select>

  • 相关阅读:
    Maker DAO 与稳定币 Dai
    0x 协议治理体系,Part-2:Q&A
    Gnosis白皮书
    Digix:密码学资产中的黄金标准
    闪电网络主心骨——HTLC(哈希时间锁定)简介
    如何减少PDF文件的大小
    以太坊:创建 ERC-20 token
    Sublime Text 3 快捷键大全
    数据库学习第二季第三集:各种编程语言从数据库中获得数据方式小结
    数据库学习第二季第三集:各种编程语言从数据库中获得数据方式小结
  • 原文地址:https://www.cnblogs.com/Samuel-Leung/p/10695301.html
Copyright © 2011-2022 走看看