【Debug】查询的数据量比数据库中的数据量还要多

今天前端反馈了一个bug,某个接口返回的数据很多,我到mysql数据库看了一下,查询的表名为trs_risk,其中只有1000多条数据,而页面返回有5000多条数据!!

匪夷所思啊,我定位到Mapper层的代码,返回的也是5000多条数据,于是我反复执行了好几遍sql语句,根据查询条件从mysql中只能查询出一条数据,而且mysql本身也就1000多条数据,怎么可能查询出5000多条呢?

我尝试咨询GPT,GPT说可能是Mybatis的缓存啥的,但我每次运行,都是固定的一个数据量:5231,如果有缓存,数据不应该越来越多吗?我重启了服务再次进行查询,依然是5231,到底怎么回事。。。

就在我百思不得其解的时候,我突然意识到,系统不只用了一个mysql数据库,还有clickhouse数据库 ,因为mysql中恰好有trs_risk这张表,我就想当然地以为接口是从mysql中查询数据的,但我根本没考虑过clickhouse中是否存在这张表。

于是去clickhouse里面一看,果然有这张表,再执行刚刚的查询语句,结果显示:5231行!!

真相大白了。那个接口是从clickhouse中查询的数据,mysql虽然也有这张表, 但是根本不是查询的对象。


问题解决了,但新的疑问出现了:当存在多个数据源的时候,mybatis如何判断每个sql应该查询哪个数据源呢?当然这个问题就留到以后研究了。

相关推荐
Nturmoils41 分钟前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波5 小时前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_1 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_4 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
冬奇Lab5 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence5 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神5 天前
三、用户与权限管理
数据库·mysql
麦聪聊数据6 天前
数据服务化时代:企业数据能力输出的核心路径
数据库
shushangyun_6 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
DARLING Zero two♡6 天前
【MySQL数据库】数据类型与表约束
数据库·mysql