【问题标题】:does a record exist? count vs limit vs both nested有记录吗?计数 vs 限制 vs 嵌套
【发布时间】:2012-12-15 12:28:34
【问题描述】:

假设您想检查是否有任何行与查询匹配(如果表包含任何匹配项,则只是一个真/假)。哪个是首选(并且可选地,为什么)?还是有更好的方法?

SELECT COUNT(*) > 0 FROM someTable WHERE someField = someValue

SELECT someField = someValue FROM someTable WHERE someField = someValue LIMIT 1

SELECT COUNT(*) > 0 FROM (SELECT someValue FROM someTable WHERE someField = someValue LIMIT 1) someAlias;

【问题讨论】:

标签: mysql


【解决方案1】:

我会使用 EXISTS:

SELECT EXISTS (SELECT * FROM someTable);

如果子查询返回任何行,则返回 1 (True),否则返回 0 (False)。

【讨论】:

    猜你喜欢
    • 2014-06-10
    • 1970-01-01
    • 2014-06-26
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多