当前位置: 首页 > news >正文

mybatis plus (sqlserver) 根据条件来获取id最大的,或者是新增的最新的一条记录(同条件可能会有多条出现)

1、mysql的版本 limit 1

QueryWrapper<Userinfo> queryWrapper = new QueryWrapper<>();queryWrapper.eq("fid", payment.getFid());return userinfoMapper.selectOne(queryWrapper.orderByDesc("id").last("limit 1"));

只要类似以上的代码,就可以成功的,获取到fid一致的userinfo的最新的一条记录,当然这里的id是自增的。

发现sql是这样:

select fieldname from userinfo where fid=1 order by id desc limit 1

发现超级可以。

2、sqlserver版本的top 1

sqlserver中没有limit 1这种,只有top 1,类似以下的sql:

select top 1 fieldname from userinfo where fid=1 order by id desc

3、sqlserver中实现

方法一:取得id取记录

QueryWrapper<Userinfo> queryWrapper = new QueryWrapper<>();queryWrapper.eq("fid", payment.getFid());queryWrapper.select("max(id) as id");Userinfo userinfot = userinfoMapper.selectOne(queryWrapper);return userinfoMapper.selectById(userinfot.getId());

上面根据条件取得id,然后通过id来取得这条记录,转了一下。

方法二:分页取一条

QueryWrapper<Userinfo> queryWrapper2 = new QueryWrapper<>();queryWrapper2.eq("fid", payment.getFid());queryWrapper2.orderByDesc("id");Page<Userinfo> users = userinfoMapper.selectPage(new Page<>(1,1), queryWrapper2);if(users.getTotal()>0) {return users.getRecords().get(0);}return null;

上面的sql是通过分页取一条来处理的。

方法三:@Select注解 mybatis

这样就可以成功取到了一条记录,当然我们也可以直接用sql语句来编号用@Select来类似这种:

这个在mapper直接用注解的方法来处理,当然也可以是基于xml的,看个人喜欢吧。

相关文章:

  • Java—— 可变参数、集合工具类、集合嵌套、不可变集合
  • [数据结构]6. 队列-Queue
  • C++学习细节回顾(汇总二)
  • 【交互 / 差分约束】
  • AD 规则的使能及优先级的设置
  • 机密虚拟机的威胁模型
  • Java 与 Go 语言对比
  • 【 Java开发枚举值规范】
  • NACOS基于长链接的⼀致性模型
  • 从Transformer到多模态智能,剖析人工智能时代的核心引擎​​
  • 在Linux中如何使用Kill(),向进程发送发送信号
  • 编程题 03-树2 List Leaves【PAT】
  • 为什么要选择七彩喜数字康养平台?加盟后有何优势?
  • Oracle版本、补丁及升级(12)——补丁及补丁集
  • 2011-2020年各省粗离婚率数据
  • 解密企业级大模型智能体Agentic AI 关键技术:MCP、A2A、Reasoning LLMs- consistency is the key
  • AI时代的弯道超车之第十二章:英语和编程重要性?
  • 动态规划问题 -- 多状态模型(删除并获得点数)
  • MySQL之基础索引
  • 第二十九节:直方图处理-直方图均衡化
  • 诠释微末处的丰盈:“上海制造佳品汇”首届海外专场即将亮相日本大阪
  • 硅料收储挺价“小作文”发酵光伏板块罕见大涨,知情人士:确实在谈
  • 习近平同巴西总统卢拉共同出席合作文件签字仪式
  • 工人日报:“鼠标手”被纳入职业病,劳动保障网越织越密
  • 从“求生”到“生活”:医保纳入创新药让梗阻性肥厚型心肌病患者重拾生活掌控权
  • 浙江公开征集涉企行政执法问题线索,包括乱收费、乱罚款等