当前位置:  数据库>mysql

MySQL 查询结果取交集的实现方法

    来源: 互联网  发布时间:2014-10-04

    本文导语:  1 MySQL中如何实现以下SQL查询 (SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305') INTERSECT (SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315') 请各位不吝赐教,小弟先谢过~ 解: 取交集 s...

1
MySQL中如何实现以下SQL查询
(SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305')
INTERSECT
(SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315')
请各位不吝赐教,小弟先谢过~
解:
取交集
select a.* from
(
SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305'
) as a
cross join
(
SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315'
) as b on a.Name = b.Name;

2.
SELECT * FROM (
SELECT DISTINCT col1 FROM t1 WHERE...
UNION ALL
SELECT DISTINCT col1 FROM t1 WHERE...
) AS tbl
GROUP BY tbl.col1 HAVING COUNT(*) = 2

3.
交集:
SELECT * FROM table1 AS a JOIN table2 AS b ON a.name =b.name
举例:
表a:
FieldA
001
002
003
表b:
FieldA
001
002
003
004
请教如何才能得出以下结果集,即表A, B行交集
FieldA
001
002
003
答案:select a.FieldA from a inner join b on a.FieldA=b.FieldA
差集:
NOT IN 表示差集
SELECT * FROM table1 WHERE name NOT IN (SELECT name FROM table2)

    
 
 

您可能感兴趣的文章:

  • MySQL实现差集(Minus)和交集(Intersect)测试报告
  • mysql中文排序注意事项与实现方法
  • Thinkphp实现MySQL读写分离操作示例
  • MySQL实现类似Oracle中的decode()函数的功能
  • linux+free_radius+mysql能否实现多重认证?
  • 使用dreamhost空间实现MYSQL数据库备份方法
  • 如何实现JSP与mysql的连接?
  • 详解MySQL中DROP,TRUNCATE 和DELETE的区别实现mysql从零开始
  • mysql 选择插入数据(包含不存在列)具体实现
  • 请问,如何在windows的环境下,实现jsp和mysql的连接?
  • mysql数据库添加用户及分配权限具体实现
  • mysql实现根据多个字段查找和置顶功能
  • MySQL 查询结果以百分比显示简单实现
  • 简单实现SQLServer转MYSQL的方法
  • 在MySQL如何实现如:select top 2 * from board; 这样的提取前N条记的功能?
  • MySql实现跨表查询的方法详解
  • MySQL 一次执行多条语句的实现及常见问题
  • php下巧用select语句实现mysql分页查询
  • mysql 触发器实现两个表的数据同步
  • ●●●遇到难题,请高手指点,lvs双mail,mai用户在一台mysql上,实现多台mail轮流工作●●
  • 让MySQL支持中文排序的实现方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 把mysql查询结果保存到文件的shell脚本
  • 请教redhat9 关于 mysql数据查询结果显示的超出屏幕的问题
  • 我在linux下,安装mysql,结果总是不成功,各位大侠帮忙啊,分不是问题
  • mysql如何实现多行查询结果合并成一行
  • 数据库查询排序使用随机排序结果示例(Oracle/MySQL/MS SQL Server)
  • Python中让MySQL查询结果返回字典类型的方法
  • MySQL查询全部数据集结果不一致问题解决方案
  • MYSQL中统计查询结果总行数的便捷方法省去count(*)
  • linux 64位 红帽子 5装apache+mysql+php+gd,结果gd库里jpeg不能用
  • MySQL查询in操作 查询结果按in集合顺序显示
  • mysql中如何查看最大连接数(max_connections)和修改最大连接数
  • 在 linux下输入"mysql"命令,进入mysql命令行,但出现“Can't connetc to local MySQL server thuough socket /var/lib/mysql/mysql.sock
  • Mysql查询错误:ERROR:no query specified原因
  • MySQL 重装MySQL后, mysql服务无法启动
  • php安装完成后如何添加mysql扩展
  • 为什么用linux安装盘安装了mysql后,启动mysql,提示找不到mysql.sock文件?
  • mysql中查询当前正在运行的SQL语句并找出mysql中运行慢的sql语句
  • 請教,在redhat linux7.2+mysql 中,系統提示mysql已啟動,網頁卻不能訪問mysql?
  • Myeclipse中自带Tomcat的JDBC连接池配置(mysql和mssql)
  • 求解释: useradd -g mysql mysql -d /home/mysql -s /sbin/nologin
  • MySQL Workbench的下载安装与使用教程
  • 在Linux内安装了Mysql,无法进入Mysql.
  • php中内置的mysql数据库连接驱动mysqlnd简介及mysqlnd的配置安装方式
  • 怎样在linux终端输入mysql直接进入mysql?
  • VS2012+MySQL+SilverLight5的MVVM开发模式介绍
  • c++中关于#include <mysql/mysql.h>的问题?
  • MySQL索引基本知识
  • mysql -u root mysql 怎么解释
  • Mysql设置查询条件(where)查询字段为NULL
  • mm.mysql那里可以下载?www.mysql.com根本下载不了。谢谢了
  • mysql中字符串和时间互相转换的方法(自动转换及DATE_FORMAT函数)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3