如何通過SQL找出2個表里值不同的列的方法_MySQL教程
推薦:基于一致性hash算法(consistent hashing)的使用詳解本篇文章對一致性hash算法(consistent hashing)的使用進行了詳細的分析介紹。需要的朋友參考下
以下有兩個表,他們的結構完全相同,請通過SQL找出值不同的列。
Student_1
Student_2
方法一 -- NOT EXISTS:
復制代碼 代碼如下:www.wf0088.com
SELECT *
FROM Student_1 S1
WHERE NOT EXISTS
(SELECT *
FROM Student_2 S2
WHERE S1.name = S2.name
AND S1.age = S2.age
AND S1.score = S2.score
)
UNION ALL
SELECT *
FROM STUDENT_2 S2
WHERE NOT EXISTS
(SELECT *
FROM STUDENT_1 S1
WHERE S1.name = S2.name
AND S1.age = S2.age
AND S1.score = S2.score
);
方法二 -- MINUS
復制代碼 代碼如下:www.wf0088.com
(SELECT * FROM Student_1
MINUS
SELECT * FROM Student_2)
UNION ALL
(SELECT * FROM Student_2
MINUS
SELECT * FROM Student_1)
方法三 -- HAVING GROUP BY
復制代碼 代碼如下:www.wf0088.com
SELECT DISTINCT name, age, score FROM (
SELECT * FROM Student_1
UNION ALL
SELECT * FROM Student_2
)GROUP BY name, age, score HAVING COUNT(*)=1 ;
分享:mysql 將列值轉變為列的方法應同學的請求,寫個將列值轉變為列的sql語句,記錄一下。
相關MySQL教程:
- MSSQL清空日志刪除日志文件
- 關于數據庫中保留小數位的問題
- 解析mysql與Oracle update的區別
- mysql 導入導出數據庫以及函數、存儲過程的介紹
- MySQL——修改root密碼的4種方法(以windows為例)
- 解決MYSQL出現Can''t create/write to file ''#sql_5c0_0.MYD''的問題
- 深入理解SQL的四種連接-左外連接、右外連接、內連接、全連接
- 解析:內聯,左外聯,右外聯,全連接,交叉連接的區別
- mysql出現“Incorrect key file for table”處理方法
- mysql重裝后出現亂碼設置為utf8可解決
- 淺析一個MYSQL語法(在查詢中使用count)的兼容性問題
- 解析MySQL中INSERT INTO SELECT的使用
- 相關鏈接:
- 教程說明:
MySQL教程-如何通過SQL找出2個表里值不同的列的方法
。