mysql 1kw数据 快速查询

查看:125
本文介绍了mysql 1kw数据 快速查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

gift_id 有100多种

gift_id,user_id 建立了索引

只需要找拥有某一gift_id的用户的查询如下,而且速度非常快
select * from user_gift where gift_id = 1004302 group by user_id

怎么快速找到 同时拥有 gift_id 为1004302和1004004的用户user_id呢 ?

解决方案

select t.user_id from table t INNER JOIN ( select id from table where gift_id in(1004302, 1004004)) AS x USING(id) group by t.user_id having count(1) > 1;

或者

select user_id from table where gift_id in(1004302, 1004004) group by user_id having count(1) > 1

因为没有测试环境,上面两个 SQL 都可以尝试一下看看。
如果有 gift_id,user_id 联合索引的话,下面一个 SQL 应该也还好吧。

这篇关于mysql 1kw数据 快速查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆