SQLSERVER使用Spring Data JPA实现模糊查询like

时间:2019-05-29 12:08:11   收藏:0   阅读:417

mysql下可以使用 CONCAT函数

@Query("SELECT u.username FROM User u WHERE u.username LIKE CONCAT(‘%‘,:username,‘%‘)")
List<String> findUsersWithPartOfName(@Param("username") String username);

  

SQLSERVER 2008r2不支持 CONCAT函数,查了很多方式最后找到了折中的办法,就是把%和内容作为参数传入

public interface WpxxRepository extends JpaRepository<Wpxx, Long> {

    @Query(value = " from  Wpxx where wpmc like :mc ")
    List<Wpxx> findAllByName(@Param("mc") String mc);
}

  

WpxxDaoImpl调用的时候
 @Override
    public List<Wpxx> findAllByName(String mc) {
        return wpxxRepository.findAllByName("%"+mc+"%");
    }

  如果想查询 like ‘%测试%‘ ,调用WpxxDaoImpl 方法 findAllByName(“测试”) ,传入到 WpxxRepository中的时候就是 findAllByName("%测试%")

原文:https://www.cnblogs.com/zyh1989/p/10942927.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!