mysql多表查询例子
【理解方式】先分别找出每个表中查询出来的结果,然后再将两个结果合并。
create database test charset utf8 collate utf8_bin;
use test;
create table tb_chengji(
xuesheng varchar(10) not null default '' primary key,
yuwen int(10)
)charset=utf8;
insert into tb_chengji values('亨德森',90),('拉拉纳',100),('马内',115),('库蒂尼奥',99);
create table tb_info(
id int(10) not null primary key auto_increment,
xuesheng varchar(10) not null default '',
xingbie char(1) not null default '',
dizhi varchar(10)select tb_info.id,tb_chengji.xuesheng,xingbie,dizhi,yuwen from tb_chengji,tb_info where tb_chengji.xuesheng=tb_info.xuesheng and tb_chengji.yuwen>=100; not null default ''
)charset=utf8;
insert into tb_info values(1,'马内','男','边锋'),(2,'库蒂尼奥','男','左中场'),(3,'拉拉纳','女','中场'),(4,'亨德森','女','后腰');
多表查询例子:
例子1
select tb_info.id,tb_chengji.xuesheng,xingbie,dizhi,yuwen from tb_chengji,tb_info where tb_chengji.xuesheng=tb_info.xuesheng and tb_chengji.yuwen>=100;
+----+-----------+---------+--------+-------+
| id | xuesheng | xingbie | dizhi | yuwen |
+----+-----------+---------+--------+-------+
| 1 | 马内 | 男 | 边锋 | 115 |
| 3 | 拉拉纳 | 女 | 中场 | 100 |
+----+-----------+---------+--------+-------+
2 rows in set (0.08 sec)
例子2
select tb_info.id,tb_chengji.xuesheng,xingbie,dizhi,yuwen from tb_chengji,tb_info where tb_chengji.yuwen>=100;
+----+-----------+---------+-----------+-------+
| id | xuesheng | xingbie | dizhi | yuwen |
+----+-----------+---------+-----------+-------+
| 1 | 拉拉纳 | 男 | 边锋 | 100 |
| 1 | 马内 | 男 | 边锋 | 115 |
| 2 | 拉拉纳 | 男 | 左中场 | 100 |
| 2 | 马内 | 男 | 左中场 | 115 |
| 3 | 拉拉纳 | 女 | 中场 | 100 |
| 3 | 马内 | 女 | 中场 | 115 |
| 4 | 拉拉纳 | 女 | 后腰 | 100 |
| 4 | 马内 | 女 | 后腰 | 115 |
+----+-----------+---------+-----------+-------+
8 rows in set (0.00 sec)
对上述2例的说明
例1 tb_chengji.xuesheng=tb_info.xuesheng将表tb_chengji和tb_info连接起来,叫做等同连接。
例2 如果不使用tb_chengji.xuesheng=tb_info.xuesheng,那么产生的结果将是两个表的笛卡尔积,叫做全连接。
mysql多表查询例子的更多相关文章
- MySQL多表查询之外键、表连接、子查询、索引
MySQL多表查询之外键.表连接.子查询.索引 一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为 ...
- MySQL多表查询、事务、DCL:内含mysql如果忘记密码解决方案
MySQL多表查询.事务.DCL 多表查询 * 查询语法: select 列名列表 from 表名列表 where.... * 准备sql # 创建部门表 CREATE TABLE dept( id ...
- Mysql 单表查询 子查询 关联查询
数据准备: ## 学院表create table department( d_id int primary key auto_increment, d_name varchar(20) not nul ...
- (转)Mysql 多表查询详解
MySQL 多表查询详解 一.前言 二.示例 三.注意事项 一.前言 上篇讲到mysql中关键字执行的顺序,只涉及了一张表:实际应用大部分情况下,查询语句都会涉及到多张表格 : 1.1 多表连接有 ...
- MySQL多表查询回顾
----------------------siwuxie095 MySQL 多表查询回顾 以客户和联系人为例(一对多) 1.内连接 /*内连接写法一*/ select * from t_custom ...
- python 3 mysql 单表查询
python 3 mysql 单表查询 1.准备表 company.employee 员工id id int 姓名 emp_name varchar 性别 sex enum 年龄 age int 入职 ...
- python3 mysql 多表查询
python3 mysql 多表查询 一.准备表 创建二张表: company.employee company.department #建表 create table department( id ...
- Mysql 单表查询-排序-分页-group by初识
Mysql 单表查询-排序-分页-group by初识 对于select 来说, 分组聚合(((group by; aggregation), 排序 (order by** ), 分页查询 (limi ...
- Mysql 单表查询where初识
Mysql 单表查询where初识 准备数据 -- 创建测试库 -- drop database if exists student_db; create database student_db ch ...
随机推荐
- PHP版本VC6与VC9、Thread Safe与None-Thread Safe等的区别
PHP版本VC6与VC9.Thread Safe与None-Thread Safe等的区别 [摘要]PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,在PHP发 ...
- Windows下获取本机IP地址方法介绍
Windows下获取本机IP地址方法介绍 if((hostinfo = gethostbyname(name)) != NULL) { #if 1 ; printf("IP COUNT: % ...
- 代码规范[iOS]
一.文件系统 二.代码结构 三.常量 宏 四.布局方式 数据持久化 五.网络 六.类目.延展 七.内存.线程 八.其他 九.版本控制.上线相关 十.附录1(公共库) 十一.附录2(公共类目) 十二 ...
- 文件上传去除"Content-Disposition: form-data"
某个项目中为了统一处理文件上传业务,创建了一个FileUpload Handle,由于上传客户端用到各种技术,当时为了方便断点续传,就直接接收请求中的文件内容(可能是分片),所以处理的不是规范的htt ...
- 转: KindEditor 图片空间文件增加删除文件、文件夹功能(ASP语言环境)
KindEditor 图片上传功能中集成的图片空间文件管理插件可以对已上传图片进行管理,十分便捷,只是没有图片删除功能,仔细研读xieliang分享的经验后,自己动手改造了一下,顺便分享给有同样需求的 ...
- Fiddler-009-AutoResponder 简单的 MOCK SERVER 应用实例
在我们日常的测试中经常需要测试特定的响应对应的客户端展示样式是否正确无误,实现测试方法一般有如下三种: 创建新的测试数据(工作量较大) 修改已有测试数据(例如修改对应的状态码,若是最终需要测试的按钮状 ...
- iOS沙盒目录
出于安全考虑,iOS系统的沙盒机制规定每个应用都只能访问当前沙盒目录下面的文件(也有例外,比如系统通讯录能在用户授权的情况下被第三方应用访问),这个规则把iOS系统的封闭性展现的淋漓尽致. 一.沙盒中 ...
- SQL调优
# 问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用 系统提交实际应用后,随着数据库中数据的增加,系 ...
- Javascript AMD学习
我们知道在其它编程语言中, 都有包(命令空间)的概念, 帮助我们更好的管理代码结构. 如java中的package, python中的module. 但是在js语言中, 在一个页面执行环境内, 所有引 ...
- hadoop datanode启动失败
问题导读: 1.Hadoop出现问题时,该如何入手查看问题?2.datanode无法启动,我们该怎么解决?3.如何动态加入DataNode或TaskTracker? 一.问题描述当我多次格式化文件系统 ...