如何通过SQL找出2个表里值不同的列的方法_MySQL教程
推荐:基于一致性hash算法(consistent hashing)的使用详解本篇文章对一致性hash算法(consistent hashing)的使用进行了详细的分析介绍。需要的朋友参考下
以下有两个表,他们的结构完全相同,请通过SQL找出值不同的列。
Student_1
Student_2
方法一 -- NOT EXISTS:
复制代码 代码如下:www.mb5u.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.mb5u.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.mb5u.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个表里值不同的列的方法。