-- 单表查询

SELECT sc.*FROM sc

SELECT * FROM course

-- 分页  LIMIT 从0开始检索

SELECT * FROM course LIMIT 0,3

SELECT * FROM course limit 3,3

SELECT * FROM course LIMIT 6,1

-- 多表连接查询

-- 1.等值与非等值连接查询

SELECT * FROM student;

SELECT * FROM course;

SELECT * FROM sc;

-- 笛卡儿积

SELECT * FROM student,sc;

SELECT * FROM student,sc WHERE student.Sno=sc.Sno

SELECT * FROM student,sc WHERE student.sno<>sc.sno

SELECT A.*,B.cno,B.Grade FROM student as A,SC as B WHERE A.sno=B.sno;

SELECT A.*,B.cno,C.Cname,B.grade FROM student A,sc B,course C

WHERE A.Sno=B.Sno AND B.cno=C.cno;

SELECT A.sno,A.Sname,A.Ssex,C.cname,B.grade FROM student A,sc B,course C

WHERE A.sno=B.sno and B.cno=C.cno;

-- 自身连接

SELECT * FROM course;

SELECT * FROM course A,course B;

-- 选择直接先修课

SELECT A.cno,A.cname,A.cpno,B.cname FROM course A,course B

WHERE A.Cpno=B.Cno AND A.cno=1;

-- 选择间接先修课

SELECT A.cno,A.cname,B.cpno FROM course A,course B

WHERE A.cpno=B.cno and A.cno=1;

-- FIRST SECOND

SELECT FIRST.cno, FIRST.cname, SECOND.cpno

FROM course FIRST,course SECOND

WHERE FIRST.cpno=second.cno AND FIRST.cno=1;

-- 选择pascal语言

SELECT A.cno,A.cname,B.cpno,C.cname FROM course A,course B,course C

WHERE A.cpno=B.Cno AND B.cpno=C.Cno;

-- 外连接

-- 查询每个学生的选课情况

SELECT * FROM student;

SELECT * FROM course;

SELECT * FROM sc;

-- LEFT JOIN: 以左表为基准,和右边的表连接,右边记录没用的以null代替

SELECT * FROM student A LEFT JOIN sc B on A.sno=B.sno;

-- 查找选过课程的学生的选课情况

SELECT * FROM student A RIGHT JOIN sc B on A.sno=B.sno;

SELECT * FROM sc A LEFT JOIN student B on A.sno=B.sno;

-- 查找每个学生的选课情况,要显示课程名称,三个表

SELECT * FROM student A LEFT JOIN sc B on A.sno=B.sno;

-- 三表连接 INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录

SELECT A.*,B.*,C.* FROM student A JOIN sc B INNER JOIN course C

ON A.sno=B.Sno and B.cno=C.Cno;

SELECT A.*,B.cno,C.cname,B.grade FROM student A INNER JOIN Sc B INNER JOIN course C

ON A.sno=B.sno AND B.Cno=C.Cno;

-- INNER JOIN/join(内连接,或等值连接):获取两个表中字段匹配关系的记录。

-- LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。

-- RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

-- 复合条件连接

-- 嵌套查询 IN

SELECT * FROM student;

SELECT * FROM student WHERE Sage in (18,19);

-- 男生的选课情况

SELECT * FROM sc WHERE sno IN(SELECT sno FROM student WHERE Ssex='男');

SELECT * FROM sc WHERE sno IN(SELECT sno FROM student WHERE Ssex in ('男'));

mysql查询_MYSQL查询相关推荐

  1. mysql 执行查询_MySQL查询的执行过程

    我们总是希望MySQL能够获得更高的查询性能,最好的办法是弄清楚MySQL是如何优化和执行查询的.一旦理解了这一点,就会发现:很多的查询优化工作实际上就是遵循一些原则让MySQL的优化器能够按照预想的 ...

  2. mysql求和 子查询_MYSQL 查询方法 统计查询 链接查询 子查询

    mysql表格查询方法: 查询: 1.简单查询 select * from Info --查所有数据 select Code,Name from Info --查指定列的数据 select Code ...

  3. 怎么查mysql数据库版本信息查询_mysql 查询版本(mysql查询数据库版本信息)

    mysql 查询版本(mysql查询数据库版本信息) 2020-07-24 11:32:43 共10个回答 1.通过mysql的-V参数查询版本信息mysql-V2.登录mysql时可以查询版本信息m ...

  4. mysql时间戳查询_mysql查询时间戳(TIMESTAMP)

    在mysql数据中查询的时间戳 1.普通时间转unix/linux时间戳命令 unix_timestamp()是时间函数 mysql> select  unix_timestamp(201310 ...

  5. 查看MySQL句柄_mysql查询语句-handler

    1 简介 mysql除可使用select查询表中的数据,也可使用handler语句,这条语句使我们能够一行一行的浏览一个表中的数据,不过handler语句并不具备select语句的所有功能.它是mys ...

  6. mysql 交集_MySQL 查询结果取交集的实现方法

    1 MySQL中如何实现以下SQL查询 (SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsC ...

  7. mysql 缓冲查询_MySQL查询高速缓冲

    可以在SELECT语句中指定查询缓存相关选项: · SQL_CACHE 如果query_cache_type系统变量的值是ON或DEMAND,查询结果被缓存. · SQL_NO_CACHE 查询结果不 ...

  8. mysql 从a到z 查询_mysql 查询数据时按照A-Z顺序排序返回结果集

    mysql 查询数据时按照A-Z顺序排序返回结果集 $sql = "SELECT * , ELT( INTERVAL( CONV( HEX( left( name, 1 ) ) , 16, ...

  9. 查mysql结构_Mysql查询架构信息

    今天想给整个数据库做初始化,也就是清空所有表,然后让索引归零,使用truncate table 就可以,但好多张表,怎么批量搞定呢? 有人说重建表吧,dump一下,然后再重建,但我还是想用trunca ...

  10. mysql 以什么结尾查询_MySQL查询选择以某些字符/数字结尾的列值?

    让我们首先创建一个表-mysql> create table DemoTable ( Number int ); 使用插入命令在表中插入一些记录-mysql> insert into De ...

最新文章

  1. bufferedreader读取中文乱码_Python读取excel的两种方法
  2. php curl 携带session,PHP curl session 使用
  3. python note
  4. leetcode 解压缩_leetcode之字符串压缩
  5. 刘汝佳训练指南——数论专题知识点总结:
  6. 一个伟大计划终于完成了(粉丝联盟网正式上线了)
  7. no segments* file found in SimpleFSDirectory问题总结
  8. Docker启动一个Centos镜像
  9. for循环一种不常见的用法
  10. [SmartFoxServer入门]服务器安装
  11. python语言程序设计实践教程答案实验二_20192428 实验二《Python程序设计》实验报告...
  12. Abaqus2020帮助文件无法搜索问题
  13. python网络爬虫的流程图_Python 网络爬虫程序架构及运行流程
  14. 51 单片机 程序编写
  15. 3D线激光成像数学模型简析
  16. switch更新主机服务器维护,switch更新链接不到服务器
  17. 教你在CorelDRAW中制作水印
  18. R语言学习(常用)网址和书籍
  19. Error running 'XXX': Cannot start process, the working directory 'F:\JavaSe\JavaSe' does not exis
  20. Java字符串:getBytes() 方法

热门文章

  1. java实现权限_Java实现权限管理的两种方式
  2. sqli-lab--writeup(7~10)文件输出,时间布尔盲注
  3. python学习1:注释\变量类型\转换函数\转义字符\运算符
  4. linux 库的头文件安装在,“找不到jpeg的头文件或库文件”在Alpine Linux上安装枕头...
  5. 中国网建java发送短信_短信验证登陆-中国网建提供的SMS短信平台
  6. 虚拟跳线软件干什么用的_疯狂刷单!用违法软件生成虚拟手机号,“骑手”半年“刷单”牟利60余万,百米内竟有万笔订单 | 申晨间...
  7. java 按位_Java中的按位运算
  8. 只需五步学会Maven 3.6.1OR 3.6.3及其他版本的下载安装与配置【图文详解】
  9. logstash-filter模块
  10. awk教程入门与实例练习(二)