Bulk/batch 使用 JPA/Native 查询在 MySql 中搜索

Bulk/batch search in MySql using JPA/Native query

我有一个 MySQL 数据库 table,其中包含 1000 万个实体。我必须搜索具有多个参数的实体。 示例:

select * 来自 result_table where roll=12345 and reg=6789 and exam='ABC';

我正在寻找一种有效的方法来使用 JPA 或使用单个查询或任何其他优化选项的本机查询来批处理实体搜索。 示例:

select * from result_table where roll=1234 and reg=1234 and exam='ABC';
select * from result_table where roll=1234 and reg=1234 and exam='DEF';
select * from result_table where roll=2222 and reg=3333 and exam='XYZ';

Mysql IN 运算符无法解决我的问题,因为 roll 和 reg 在不同的考试中可能相同。谢谢。

请试试这个,

创建table

create table Test(id integer,roll integer, reg integer, exam varchar(100));

插入记录

insert into Test(id,roll,reg, exam) values(1,1234,1234, "ABC");

insert into Test(id,roll,reg, exam) values(1,1234,1234, "DEF");

insert into Test(id,roll,reg, exam) values(1,2222,3333, "XYZ");

select查询

select * from Test where CONCAT(roll,reg,exam) in ('12341234ABC','12341234DEF','22223333XYZ');