SQL:如何查找是否至少有一条记录符合条件

时间:2013-09-22 10:01:18

标签: sql optimization count

在我的一个数据库表中,我想知道是否存在与条件相对应的至少一条记录。

我写的查询是 从表中计算(*)(条件) 在我的程序中,我可以检查结果是否为非零值。 它工作正常。

我们如何优化这一点?我不想等到它找到符合条件的记录总数。

3 个答案:

答案 0 :(得分:7)

SQL有exists可用于此目的。如果查询返回结果,则返回1,否则返回0.

Select Case When Exists (<query>) Then 1 Else 0 End as X

答案 1 :(得分:4)

SELECT TOP 1 1 AS found
FROM tablename
WHERE ...

然后检查查询是否返回单行。

在这种情况下,引擎会在找到第一行后立即返回结果(假设您没有添加ORDER BY

答案 2 :(得分:-4)

SqlCommand command = new SqlCommand(“SELECT * FROM InsertProductTb”,con);

        SqlDataAdapter da = new SqlDataAdapter(command);
        DataTable dt = new DataTable();
        da.Fill(dt);

        if (dt.Rows.Count > 0)
        {

         }