问答详情
源自:-

如果字段为空不更新、字段不为空做更新,springData如何去实现?


类似mybaits

http://img.mukewang.com/59950004000133a310040197.jpg

whereid=#{id}

<if test="createTimeStart!=null">
  AND p.create_time &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd!=null">
  AND p.create_time &lt;= #{createTimeEnd}
</if>


提问者:慕粉1940095621 2017-08-17 10:33

个回答

  • 慕慕5427672
    2018-10-16 16:47:28

    可以看看这两种方法:
    (1)@Query( value = "SELECT * FROM sys_customer WHERE 1=1 " +
            " AND if(:name!='',name LIKE CONCAT('%',:name,'%'),1=1)",
            nativeQuery = true)
            
    (2)@Query(value = "SELECT * FROM sys_customer WHERE 1=1 "+
            " AND (name LIKE CONCAT('%',:name,'%') OR :name IS NULL )",
            nativeQuery = true)
    List<Customer> findDate(@Param("name") String name);