如何通过SQL找出2个表里值不同的列的方法

 更新时间:2013年05月07日 17:47:34   作者:  
本篇文章对如何通过SQL找出2个表里值不同的列的方法进行了详细的分析介绍,需要的朋友参考下

以下有两个表,他们的结构完全相同,请通过SQL找出值不同的列。

Student_1

NAME AGE SCORE
peter 26 100
jack 25 96
daniel 26 48
bark 21 69

 

 

Student_2

NAME AGE SCORE
peter 26 89
jack 25 96
daniel 26 48
bark 21 69

 

方法一 -- NOT EXISTS:

复制代码 代码如下:

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

复制代码 代码如下:

(SELECT * FROM Student_1
MINUS
SELECT * FROM Student_2)
UNION ALL
(SELECT * FROM Student_2
MINUS
SELECT * FROM Student_1)

方法三 -- HAVING GROUP BY

复制代码 代码如下:

SELECT DISTINCT name, age, score FROM (
SELECT * FROM Student_1
UNION ALL
SELECT * FROM Student_2
)GROUP BY name, age, score HAVING COUNT(*)=1 ;

相关文章

  • 在SQL中获取一个长字符串中某个字符串出现次数的实现方法

    在SQL中获取一个长字符串中某个字符串出现次数的实现方法

    以下是对在SQL中获取一个长字符串中某个字符串出现次数的实现方法进行了详细的分析介绍,需要的朋友可以参考下
    2013-07-07
  • mysql存储过程之case语句用法实例详解

    mysql存储过程之case语句用法实例详解

    这篇文章主要介绍了mysql存储过程之case语句用法,结合实例形式详细分析了mysql存储过程中case语句的相关功能、原理与使用技巧,需要的朋友可以参考下
    2019-12-12
  • 基于mysql查询语句的使用详解

    基于mysql查询语句的使用详解

    本篇文章是对mysql查询语句的使用进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • mysql 启动错误1067 问题及解决方法

    mysql 启动错误1067 问题及解决方法

    这篇文章主要介绍了mysql 启动错误1067 问题及解决方法的相关资料,需要的朋友可以参考下
    2016-11-11
  • 一文深入探究MySQL自增锁

    一文深入探究MySQL自增锁

    MySQL的自增锁是指在使用自增主键(Auto Increment)时,为了保证唯一性和正确性,系统会对自增字段进行加锁,这样可以确保同时插入多条记录时,每条记录都能够获得唯一的自增值,本将和大家一起深入探究MySQL自增锁,需要的朋友可以参考下
    2023-08-08
  • 8种MySQL分页方法总结

    8种MySQL分页方法总结

    这篇文章主要介绍了8种MySQL分页方法总结,小编现在才知道,MySQL分页竟然有8种实现方法,本文就一一讲解了这些方法,需要的朋友可以参考下
    2015-01-01
  • MySQL InnoDB 锁的相关总结

    MySQL InnoDB 锁的相关总结

    这篇文章主要介绍了MySQL InnoDB 锁的相关知识总结,帮助大家更好的理解和使用MySQL,感兴趣的朋友可以了解下
    2021-02-02
  • MySQL查询条件中in会用到索引吗

    MySQL查询条件中in会用到索引吗

    这篇文章主要给大家介绍了MySQL查询条件中in会不会用到索引的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • mysql 5.7 zip 文件在 windows下的安装教程详解

    mysql 5.7 zip 文件在 windows下的安装教程详解

    这篇文章主要介绍了mysql 5.7 zip 文件在 windows下的安装步骤,首先我们需要先下载mysql最新版本然后解压文件夹,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • mysql:Can''t start server: can''t create PID file: No space left on device

    mysql:Can''t start server: can''t create PID file: No space

    这篇文章主要介绍了mysql启动失败不能正常启动并报错Can't start server: can't create PID file: No space left on device问题解决方法,需要的朋友可以参考下
    2015-05-05

最新评论