MySQL复习资料(六)——MySQL-多表联合查询

举报
红目香薰 发表于 2022/02/28 21:13:05 2022/02/28
【摘要】 ​ ​📋导读📋💝博客主页:红目香薰_CSDN博客-大数据,MySQL,Java领域博主💝✍本文由在下【红目香薰】原创,首发于CSDN✍🤗2022年最大愿望:【服务百万技术人】🤗📋前言📋本文属于系列文章,分别为:MySQL复习资料(一)——MySQL环境安装MySQL复习资料(二)——MySQL-DDL语句MySQL复习资料(三)——MySQL-DML语句MySQL复习资料(四...

 

📋导读📋

💝博客主页:红目香薰_CSDN博客-大数据,MySQL,Java领域博主💝

✍本文由在下【红目香薰】原创,首发于CSDN✍

🤗2022年最大愿望:【服务百万技术人】🤗

📋前言📋

本文属于系列文章,分别为:

MySQL复习资料(一)——MySQL环境安装

MySQL复习资料(二)——MySQL-DDL语句

MySQL复习资料(三)——MySQL-DML语句

MySQL复习资料(四)——MySQL-聚合函数

MySQL复习资料(五)——MySQL-索引

MySQL复习资料(六)——MySQL-多表联合查询

MySQL复习资料(七)——MySQL-存储过程

MySQL复习资料(八)——MySQL-事务

MySQL复习资料(九)——MySQL-图形化工具使用

📋正文📋

MySQL复习资料(六)——MySQL-多表联合查询

目录

创建从表

两表联合查询

笛卡尔积查询

去笛卡尔积查询

查询结果筛选


创建从表

CREATE TABLE user_address (
  id int(8) NOT NULL AUTO_INCREMENT,
  uid int(8) NOT NULL,
  inName varchar(32) NOT NULL,
  inPhone varchar(11) NOT NULL,
  address varchar(200) NOT NULL,
  PRIMARY KEY (id)
) DEFAULT CHARSET=utf8;
insert into user_address values
(0,1,'superadmin','18112345671','hebei shijiazhuang'),
(0,1,'admin','18112345672','guangxi nanning'),
(0,2,'zhangsan','18112345673','heilongjiang haerbin'),
(0,2,'zhangsan','18112345674','hubei wuhan'),
(0,3,'lisi','18112345675','hebei zhangjiakou'),
(0,4,'wangwu','18112345676','hebeisheng xingtai'),
(0,5,'zhaoliu','18112345677','jiangwusheng hangzhoushi'),
(0,9,'shigandang','18112345678','shanghaishi');

不必要加外键,如果需要添加,需要将MySQL的引擎改为【InnoDB】。

show create table users;

只有在【InnoDB】下才可以添加外键。

原因:禁止使用外键,如果要保证完整性,应由应用程式实现——参考《阿里内部mysql规范》

两表联合查询

笛卡尔积查询

select * from users,user_address;

共计查询64条,计算方式:A表users 8条数据,B表user_address 8条数据,8*8=64条。

交叉相乘,相当于计算了两个表的笛卡尔积。

去笛卡尔积查询

select * from users,user_address where users.id=user_address.uid;

查询结果筛选

由于有两个id,需要说明都是谁的ID,故而需要进行单独修改名称,如果只有一个列名可以直接使用。

select u.id '用户id',createDate,userName,passWord,age,phone '手机',introduce,a.id '地址id',inName '收获人',inPhone '收货人手机号',address '收货人地址' from users u,user_address a where u.id=a.uid;

在常规的数据基础上做筛查即可。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。