繁体   English   中英

MySQL查询单行并从中获取值

[英]MySQL query for a single row and get the value from it

我有一个PHP文件,它将更新MySQL中的表。 作业完成后,它将所有完成的标志从0更新为1。 我需要从最低的主键(ID)开始查询done=0 作业完成后,我更新done = 1,然后移至下一行。 我有下表:

--------------------
| ID | test | done |   
--------------------
| 1  | test1| 0    | 
--------------------
| 2  | test2| 1    | 
--------------------
| 3  | test3| 0    | 
--------------------
| 4  | test4| 0    | 
--------------------
| 5  | test5| 1    | 
--------------------

当我SELECT test FROM mytable WHERE done=0 ORDER BY id ASC执行以下查询SELECT test FROM mytable WHERE done=0 ORDER BY id ASC它为我提供了已完成标志为0的所有测试,但是,我想从第一个开始并首先处理它,然后继续下一个,依此类推。 因此,我需要一个仅显示第一行的查询。 我怎样才能做到这一点?

您的查询在正确的轨道上,因为它已经按ID升序排序。 您需要做的就是将其限制为仅返回第一个结果(如果存在)。 只需在查询末尾添加LIMIT 1

SELECT test FROM mytable WHERE done=0 ORDER BY id ASC LIMIT 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM