加入收藏 | 设为首页 | 会员中心 | 我要投稿 甘南站长网 (https://www.0941zz.com/)- 科技、行业物联网、开发、云计算、云管理!
当前位置: 首页 > 数据库 > MySql > 正文

mysql – 最快的查询,看它是否至少返回一行

发布时间:2020-12-30 10:36:40 所属栏目:MySql 来源:互联网
导读:我只需要知道查询是否返回记录.我当然可以这样做:SELECT COUNT(*) FROM tbl WHERE conds; 但是这会返回确切的行数(当然),而且我不需要这个开销.所以我想到了这个问题:SELECT COUNT(*) FROM (SELECT id FROM tbl WHERE conds LIMIT 1) as t1 将内部查询限制

我只需要知道查询是否返回记录.

我当然可以这样做:

SELECT COUNT(*) FROM tbl WHERE conds;

但是这会返回确切的行数(当然),而且我不需要这个开销.

所以我想到了这个问题:

SELECT COUNT(*) FROM (SELECT id FROM tbl WHERE conds LIMIT 1) as t1

将内部查询限制为1.

这更快吗?或者考虑到我正在做一个子查询它取消了LIMIT 1的好处?

注意:对于每个问自己的人,我都不能将LIMIT 1应用于第一个查询,因为它不起作用

最佳答案 第二个查询中的内部选择是多余的.
如果您只想检查至少一行: –

SELECT 1 FROM tbl  // return 1
WHERE conds        // depends on your index and query
ORDER BY NULL      // avoid file-sort
LIMIT 1;           // minimum row

(编辑:甘南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读