萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> mysql中比較兩個表中的數據sql語句

mysql中比較兩個表中的數據sql語句

在mysql中我們要比較兩個數據表中數據是否相同我們可以使用聯合查詢了,關於mysql中的聯合查詢有很多種,下面我整理兩條語句。

有兩個表t_appinfo 和g_appinfo ,存儲的信息基本一致,都包含package_name這個字段,現在需要查出package_name 存在於t_appinfo表,而且不存在於g_appinfo表的記錄.

方法一:使用NOT EXISTS

 代碼如下 復制代碼


SELECT a.name,a.package_name FROM t_appinfo a
WHERE NOT EXISTS (SELECT 1 FROM g_appinfo g WHERE a.package_name=g.p_packagename) LIMIT 10000

方法二:使用NOT IN

 代碼如下 復制代碼

SELECT a.name , a.package_name FROM t_appinfo a WHERE a.package_name NOT IN (SELECT g.p_packagename FROM g_appinfo g )    LIMIT 50000

當兩個表的數據量都較多,例如都超過10萬條,此時需要給package_name加索引,提高查詢效率。

copyright © 萬盛學電腦網 all rights reserved