SQL:查询一个表的字段在另一个表里是不是存在;怎么写最优化;

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL:查询一个表的字段在另一个表里是不是存在;怎么写最优化;相关的知识,希望对你有一定的参考价值。

查询一个表的字段在另一个表里是否存在;现在的写法是:
SELECT field1 FROM table1
WHERE field1 NOT IN
(SELECT field1 FROM table2)

因为数据量大,所以跑起来特别慢,能否有优化的办法;

参考技术A select count(*) from 表1 where 列1 in (select 列1 from 表2 ) 参考技术B SELECT field1 FROM table1 a
WHERE not exists(select 1 from FROM table2 where field1=a. field1)
同时,在field1字段添加索引本回答被提问者和网友采纳

MySQL 更新一个表里的字段等于另一个表某字段的值

参考技术A 两个表,一个 tbl(user_id)一个 user(id,user_id)。本来 tbl 表的 user_id 字段和 user 表的 id 字段是对应的(外键)。现在要把 tbl 表的 user_id 字段都改为对应的 user 表的 user_id 字段

先查询确认:

再更新:

注意:这种连接方式是内连接,只有两张表共同匹配的数据才能查询到

以上是关于SQL:查询一个表的字段在另一个表里是不是存在;怎么写最优化;的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp5一个表里的字段值就是另一个表里的字段值,怎么获取另一个表的字段值呢

求SQL多表查询公式。从A表查询结果去关联B表里面的字段

sqlserver怎样判断查询出来的表里 某列是不是存在

MySQL 更新一个表里的字段等于另一个表某字段的值

急急急,Sql查询一个字段是不是存在某一个值,怎么写查询语句?

怎样用SQL查询一个表的所有字段