怎么提高查询效率

问题描述

我有一张2000W数据的表 就一列都是手机号。现在有人提交1W个号码,怎么才能快速判断出手机号是否在这张表中

解决方案

我说说个人想法! 不当之处 就当没看见哈! 1W个号码 在 2000W 中检验 本来就是量很大的!比较耗资源的! 首先在 2000W 表中 !select 查一下 号码 in (1W 号码) 的数据! 把查询出来的数据 放在 一个集合 里面(考虑下集合的容量和效率) 然后 拿这个1W 个号码去逐个 对比结果集! 就知道了!不多说了! 其他估计你也能想的到!

时间: 2024-10-23 09:36:04

怎么提高查询效率的相关文章

winform-求解决方案:oracle in 内部有几千条记录,如何提高查询效率

问题描述 求解决方案:oracle in 内部有几千条记录,如何提高查询效率 有一个winform程序 一个只有一列的datagridview,是几千条(也有可能是几万条)身份证号记录(此数据是从excel导入的) 数据库中有10多万条客户信息(如姓名.身份证.联系方式等) 然后我想实现的功能是,根据datagridview内的身份证数据,从数据中查出该身份证对应的相关信息,并在另一个datagridview中展现出来. 我现在使用的方法是 select * where sfzh in (),的

MySQL查询优化:LIMIT 1避免全表扫描提高查询效率_Mysql

在某些情况下,如果明知道查询结果只有一个,SQL语句中使用LIMIT 1会提高查询效率. 例如下面的用户表(主键id,邮箱,密码): 复制代码 代码如下: create table t_user( id int primary key auto_increment, email varchar(255), password varchar(255) ); 每个用户的email是唯一的,如果用户使用email作为用户名登陆的话,就需要查询出email对应的一条记录. SELECT * FROM t

Oracle查询指定索引提高查询效率

Oracle查询指定索引提高查询效率 一个1600万数据表--短信上行表TBL_SMS_MO结构:CREATE TABLE TBL_SMS_MO( SMS_ID NUMBER, MO_ID VARCHAR2(50), MOBILE VARCHAR2(11), SPNUMBER VARCHAR2(20), MESSAGE VARCHAR2(150), TRADE_CODE VARCHAR2(20), LINK_ID VARCHAR2(50), GATEWAY_ID NUMBER, GATEWAY_

SQL提高查询效率一些方法总结

  ◆尽量不要在where中包含子查询; 关于时间的查询,尽量不要写成:where to_char(dif_date,'yyyy-mm-dd')=to_char('2007-07-01′,'yyyy-mm-dd'); ◆在过滤条件中,可以过滤掉最大数量记录的条件必须放在where子句的末尾; FROM子句中写在最后的表(基础表,driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.如果有三个以上的连接查询,那就需要选择交叉表(inte

mysql使用crc32字段建索引提高查询效率

之前也写过这样的一篇文章,再来一篇. 给字符串类型的字段建立索引效率不高,但是必须要经常查这个字段怎么建索引?比如这个字段名称是sys_trans_id字符串类型,那么可以建一个字段sys_trans_id_src32来存储crc32的值,并给这个字段建立索引. crc32是整形,在MySQL中,给整形字段建立索引效率比较高,crc32虽然不能确保唯一性,但是无碍,相同的机率也是极小,关键是可以大大减少查询的范围,给sys_trans_id_src32这个字段建立索引,查询的时候带上crc32字

mysql中提高Order by语句查询效率的两个思路分析_Mysql

因为可能需要对数据库的记录进行重新排序.在这篇文章中,笔者就谈谈提高Order By语句查询效率的两个思路,以供大家参考. 在MySQL数据库中,Order by语句的使用频率是比较高的.但是众所周知,在使用这个语句时,往往会降低数据查询的性能.因为可能需要对数据库的记录进行重新排序.在这篇文章中,笔者就谈谈提高Order By语句查询效率的两个思路,以供大家参考. 498)this.width=498;" border=0>  一.建议使用一个索引来满足Order By子句. 在条件允许

使用Bulk Collect提高Oracle查询效率

http://carllgc.blog.ccidnet.com/blog-htm-do-showone-itemid-25946.html 使用Bulk Collect提高Oracle查询效率 Oracle8i中首次引入了Bulk Collect特性,该特性可以让我们在PL/SQL中能使用批查询,批查询在某些情况下能显著提高查询效率.现在,我们对该特性进行一些简单的测试和分析. 1. 首先,我们创建一个表,并插入100000条记录在SQL/Plus中执行下列脚本: drop table empl

sql server 查询效率-SQL Server查询效率问题,哪个高手可以帮忙解释下?

问题描述 SQL Server查询效率问题,哪个高手可以帮忙解释下? 下面5个SQL查询效率差异很多,BusinessIndex表中有300万条记录, 其中DatAuthor建立有索引,其它字段没有索引. 哪个高手可以分析下什么原因? 非常感谢! SELECT strCode, strIndex from BusinessIndex where 1=1 and UserOrgID=1 and ( BusinessIndex.strIndex like '%热水器%') --查询4s SELECT

MySQL提高分页效率_Mysql

下面就是大数据量时提高分页的效率的测试代码,分享给大家. --提高分页效率:实现分页时只读取显示数据,需要先在数据库创建数据库"TestForPaging" use TestForPaging go --创建表SomeData create table SomeData ( id int primary key, name varchar(30) null, description text ) go --插入数据 insert into SomeData values(1,'num1