当前位置: 代码迷 >> Sql Server >> SQL NOT IN查询优化有关问题
  详细解决方案

SQL NOT IN查询优化有关问题

热度:77   发布时间:2016-04-24 09:56:22.0
SQL NOT IN查询优化问题
有一张城市表MAIN_CITY,CITY_ID,CITY _ COUNTRY,CITY_NAME,其中CITY_ID为主键,现有查询
SELECT * FROM MAIN_CITY WHERE CITY_NAME NOT IN ('北京','上海','天津','重庆'),如何改写SQL语句查询效率最高呢
------解决思路----------------------
语句没法改了,除非你自己看看这些城市对应的ID 把城市名称换成ID,
或者你在city_name 上创建一个索引吧。
------解决思路----------------------
已经很简洁了,没办法优化了吧
------解决思路----------------------
条件改为
where CITY_ID not in (城市id)
可能效果更好一些。
还有就是对表中的字段建索引。
------解决思路----------------------
这个语句已经是最简化的,几乎没有优化的余地了。

LZ 所说的数据量大,有多大的时候,会慢下来?
  相关解决方案