SQL优化小技巧之查询数据是否存在的优化

        当你查询数据库中是否存在目标数据时,一般使用count(*)或者count(1)去查询,但这个只是想查询是否存在,而不是统计存在多少条,所以优化的建议是:

        查询到一条目标数据就结束即可

        SQL不再使用count,而是改用LIMIT 1,让数据库查询时遇到一条就返回结果,不要再继续查找还有多少条了。

-- 原SQL,执行后需要查找整个表的所有内容,多次匹配
select count(*) as co1 from table where a='1' and b='2';
-- 优化后SQL,只需查找到一次符合条件的数据就结束
select 1 from table where a='1' and b='2' limit 1;

        如果你的数据库目标有非常多的数据,按照原来的做法会查询全部后统计出来,而优化后的SQL只查询到第一条就结束了。相当于你需要寻找操场上的跑道是否有标记的点,你原来的做法是在操场上跑一圈查看地面上所有有标记的点,再统计求和得出结果;而优化后的做法是直接跑起来,找到第一个标记的点就可以得到结果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值