数据库 の 联表查询
文章目录
- 一. 概念
- 比较详细的参考资料。
- 二.笛卡尔积
- 三.查询的分类
- 3.1按照功能来分
- 2.1等值连接
- 2.2 为表起别名
- 2.3加筛选条件
- 3.2 外连接
- 主表和从表的区分
一. 概念
联表查询使用关键字
join
在sql语句中,某些字段名和表名,尽量用~来代替。
- 坐标查询
- 右表查询
- 中间查询
操作 | 描述 |
---|---|
Inner jion | 如果表中有一个匹配,就返回行 |
left join | 会从左表中返回所有的值,即使右表中没有匹配的值 |
right join | 会从右表中返回所有的值 |
比较详细的参考资料。
https://blog.csdn.net/plg17/article/details/78758593
二.笛卡尔积
一个表有 n 行,另一个表有 m 行,那么进行连接查询的时候,就会有 m*n 行。
之所以会出现这种情况,就是因为,我们在对 A 表和 B表进行联合查询的时候,没有有效的连接条件。
如何避免?就是添加上有效的链接条件。
class表
students
执行查询的 SQL
语句
SELECT `classname`, `name` FROM class,studentes;
相当于每个都对应这乘了一次。
三.查询的分类
按照年代分
- 192 标准
- 199 标准
3.1按照功能来分
内链接
- 等值连接
- 非等值连接
- 自连接
外连接
- 左外连接
- 右外连接
- 全外连接
交叉连接
2.1等值连接
SELECT`classname`,`name`
FROM`class`,`studentes`WHERE class.id=studentes.classid;
2.2 为表起别名
直接在表的后面加 AS
,或者省略。
SELECT`classname`,`name`
FROM`class` AS c,`studentes` sWHERE c.id=s.classid;
2.3加筛选条件
# 注释可以给表起别名
SELECT`classname`,s.id,`name`
FROM`class` AS c,`studentes` s
WHERE #添加筛选条件s.id > 2;
3.2 外连接
外连接,一般用于查询一个表中有,另一个表中没有的记录。
做外连接的时候,主表始终是显示的。从表是能查找到匹配的,才能显示出来。
主表和从表的区分
- 左外连接:
left join
左边的是主表 - 右外连接:
right join
右边的是主表
SELECT c.id ,s.*
FROM class AS c
LEFT OUTER JOIN studentes AS s
ON s.classid=c.id;
数据库 の 联表查询相关推荐
- mysql 回退查询_MYSQL数据库表排序规则不一致导致联表查询,索引不起作用问题...
Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字 ...
- mysql改了排序规则不生效_Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题...
Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字 ...
- 《MySQL》入门基础知识点大全:数据库操作、增删改查、联表查询、常用函数、MD5加密、事务特性、隔离级别
MySQL基础知识大全 1.操作数据库 1.1 创建表 1.2 修改表名 1.3 增加表的字段 1.4 修改表的字段 1.4.1 修改表的字段 1.4.2 修改表名 1.5 删除表的字段 1.6 删除 ...
- 联表查询和嵌套查询—读懂数据库仓储
数据仓储不像java.C++.JS等开发语言,而是数据库仓储更多用于对接产品工作,查询数据.分析数据.得出产品未来发展方向,与产品经理相关联,而联表查询和嵌套查询作为数据库基础的查询方法,学习使用,方 ...
- 宅在家里写数据库中联表查询
联表查询的关键字是join,如果需要判断条件的话是join on(on后面加判断条件),这两个一般是成对出现的,这里以两个表的连接进行讲解,首先给出两个表,分别是student学生表和result成绩 ...
- mysql数据库之联表查询
表准备: 这次我们用到5张表: class表: student表: score表: course表: teacher表: 表结构模型: 我们针对以下需求分析联表查询: 1.查询所有的课程的名称以及对应 ...
- oracle数据库同时实现联表查询和分页查询(未明确定义列)
ps:只是记录新手小白的脱坑之路,大佬勿喷 今天在做前端数据查询的时候,在实现联表查询的同时进行分页查询遇到了令人头秃的问题,分页查询的sql语句是这样的 select * from (select ...
- mysql 连表查询_mysql数据库之联表查询
表准备: 这次我们用到5张表: class表: student表: score表: course表: teacher表: 表结构模型: 我们针对以下需求分析联表查询: 1.查询所有的课程的名称以及对应 ...
- Spring Hibernate JPA 联表查询 复杂查询
(转自:http://www.cnblogs.com/jiangxiaoyaoblog/p/5635152.html) 今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的 ...
最新文章
- hdu2899 三分
- 带你理清 Java 混乱的日志体系 - log4j、logback、log4j2、jcl、SLFJ 究竟是啥关系?
- 在asp.net中如何用javascript读取本地Xml中的数据到网页中的文本框?
- Linux--生产者与消费者
- 自动躲避障碍物,微型蜂鸟机器人靠AI算法飞行
- 几个重要库函数的实现
- 电脑鸿蒙运行Linux程序,Linux下的Hi3861一站式鸿蒙开发烧录(附工具)-鸿蒙开发烧录工具软件电脑版-东坡下载...
- MySQL之SQL优化详解(一)
- 图像的频率谱和功率谱代表什么_功率谱估计:BT ,周期图,Bartlett ,AR ,MVDR,APES,MUSIC...
- 在苹果mac中如何使用 Word 画底线、直线、虚线?
- 通过手机号码编码传送信息的想法
- 服务器配置ssh 登录,取消账号密码登录
- qcloud-python-sts 下载安装
- clickhouse配置项config.xml详解——服务器配置参数
- 散列表、散列函数和散列冲突以及应用场景(一文看懂)
- 基于ssm的志愿者招募网站设计与实现-计算机毕业设计源码+LW文档
- VC++6.0 总是1error 问题的解决
- The number of GET/POST parameters exceeded settings.DATA_UPLOAD_MAX_NUMBER_FIELDS. ERROR:django.secu
- 实验六 WEB FTP服务器配置
- 寒江独钓——读书笔记1