我是初学者,学习如何在Python
中进行多线程处理。需要SQL
查询(我现在还没准备好深入研究复杂的SQL
内容)。我正在使用MS Access
作为数据库。
表格中有三个字段:ComputerName
,isPing
,inProgress
。需要SQL查询来选择当前不是ComputerName
的{{1}}中的一个,并将其标记为inProgress
,并将同时标记为。
inProgress
答案 0 :(得分:0)
似乎可以在TOP
子句中使用Access的子查询中使用WHERE
。如果是这样,那么您可以尝试使用以下UPDATE
语句:
UPDATE Table1
SET inProgress = True
WHERE ComputerName = (SELECT TOP 1 ComputerName FROM Table1 WHERE inProgress = False)
请注意,在没有TOP 1
子句的情况下使用ORDER BY
没有多大意义,因为您没有提供与相关的记录应该选择的逻辑第一。您可能希望将ORDER BY
添加到上面的子查询中。另请注意,正如我在评论中提到的那样,无法同时更新和选择。如果您确实需要原始SELECT
中的字段,那么您需要一个单独的查询/语句。一个选项可能是使用时间戳标记更新,然后在事后选择最近更新的记录。