在表的前 1000 条记录中搜索某些内容

Moh*_*naq 3 mysql

如果我执行以下 MySQL 查询

select * from table where name Like '%john%' limit 5;
Run Code Online (Sandbox Code Playgroud)

这意味着查询将搜索所有 mysql 数据库表并仅返回与查询 where 条件匹配的前 5 个结果。

但是,如果只想搜索数据库表中与 where 条件匹配的前 1000 条记录并只返回前 5 行,因为我在表中有 1,000,000 条记录而我只想搜索前 1000 条记录,该怎么办?我应该使用吗?

这是人类可读的通缉查询:

从表中搜索名称为 john 的前 1000 条记录,并仅返回匹配的前 5 条记录。

MySQL中对应的是什么

小智 5

您不能在没有订单的情况下执行诸如“前 1000”之类的操作,因为如果您不指定,每个查询都可能为您提供不同的订单。那么,让我们试试这种方式:

select * from (select * from table order by PUTYOURORDERFIELDHERE LIMIT 1000) where name    
like '%john%' limit 5;
Run Code Online (Sandbox Code Playgroud)