JPA更新部分字段的注解方法(动态HQL)

@Modifying(clearAutomatically = true)
	@Transactional(rollbackFor = Exception.class)
	@Query(value = "UPDATE user u set " +
			"u.weixin_name = CASE WHEN :#{#user.weixinName} IS NULL THEN u.weixin_name ELSE :#{#user.weixinName} END," +
			"u.weixin_account = CASE WHEN :#{#user.weixinAccount} IS NULL THEN u.weixin_account ELSE :#{#user.weixinAccount} END," +
			"u.level = CASE WHEN :#{#user.level} IS NULL THEN u.level ELSE :#{#user.level} END," +
			"u.send_count = CASE WHEN :#{#user.sendCount} IS NULL THEN u.send_count ELSE :#{#user.sendCount} END," +
			"u.receive_count = CASE WHEN :#{#user.receiveCount} IS NULL THEN u.receive_count ELSE :#{#user.receiveCount} END," +
			"u.user_money = CASE WHEN :#{#user.userMoney} IS NULL THEN u.user_money ELSE :#{#user.userMoney} END," +
			"u.break_count = CASE WHEN :#{#user.breakCount} IS NULL THEN u.break_count ELSE :#{#user.breakCount} END," +
			"u.created = CASE WHEN :#{#user.created} IS NULL THEN u.created ELSE :#{#user.created} END " +
			"where u.id = :#{#user.id} " , nativeQuery = true)
	int update(@Param("user")User user);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值