【发布时间】:2020-10-31 06:15:02
【问题描述】:
我有一个应用程序每 60 秒使用以下查询轮询数据库;
SELECT TOP (1) id FROM item WHERE status = 5
我想知道是否有更有效的方法来检查我的表是否包含任何行?我这里不需要返回值,我只需要检查表是否包含任何具有该状态的行。
【问题讨论】:
-
在没有
order by的情况下使用top有点奇怪,最好通过使用exists来避免整个问题,如GMB 的回答。status上有索引吗? -
不,恐怕没有索引。
标签: sql sql-server tsql count where-clause