Mysql连接命令join
数据准备:
create table boy_table (
`studentId` int(11) NOT NULL,
`name` varchar(25) not null default '',
`classes` int(11) not null,
`teacher_name` varchar(25) not null default ''
)ENGINE=InnoDB DEFAULT CHARSET=utf8;create table girl_table (
`studentId` int(11) NOT NULL,
`name` varchar(25) not null default '',
`classes` int(11) not null,
`teacher_name` varchar(25) not null default ''
)ENGINE=InnoDB DEFAULT CHARSET=utf8;begin;
insert into boy_table values (1,'卢俊义', 1,'周桐'),(2,'史文恭', 2,'周桐'),(3,'林冲', 1,'周桐'),(4,'史进', 1,'李忠'),(5,'鲁智深', 1,'周桐'),(6,'武松', 2,'周桐');
commit;begin;
insert into girl_table values (1,'扈三娘', 1,'周桐'),(2,'李师师', 3,'赵构'),(3,'顾大嫂', 1,'某某'),(4,'孙二娘', 1,'某某'),(7,'琼英', 1,'某某'),(8,'金莲', 3,'某某');
commit;select * from boy_table;
select * from girl_table;
1.INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
说明:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集(阴影)部分。
sql语句:从两个表里查出studentID一致的数据。
select a.studentID,b.studentID,a.name,b.name from boy_table a inner join girl_table b on a.studentID = b.studentID;
查询结果:
以上sql语句等价于:
select a.studentID,b.studentID,a.name,b.name from boy_table a ,girl_table b where a.studentID = b.studentID;
2.LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
说明: left join 是left outer join的简写,它的全称是左外连接,是外连接中的一种。 左(外)连接,左表(boy_table)的记录将会全部表示出来,而右表(girl_table)只会显示符合搜索条件的记录。右表记录不足的地方均为NULL。
sql案例:在boy_table 表和girl_table 表中左连接查询
sql语句:
select a.studentID,b.studentID,a.name,b.name from boy_table a left join girl_table b on a.studentID = b.studentID;
查询结果:
3.RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。
说明:right join是right outer join的简写,它的全称是右外连接,是外连接中的一种。与左(外)连接相反,右(外)连接,左表(boy_table)只会显示符合搜索条件的记录,而右表(girl_table)的记录将会全部表示出来。左表记录不足的地方均为NULL。
sql案例:在boy_table 表和girl_table 表中右连接查询
sql语句:
select a.studentID,b.studentID,a.name,b.name from boy_table a right join girl_table b on a.studentID = b.studentID;
查询结果:
Mysql连接命令join相关推荐
- mysql join 联合查询,MySQL连接(join)查询
1. MySQL连接(join)查询 连接(join)查询是将两个查询的结果以"横向对接"的方式合并起来的结果. 对比:联合查询 是将两个查询的结果以"纵向堆叠" ...
- mysql 命令行可以连接 php不能,mysql连接命令行可以php竟然不可以
我在web主机上用mysql -h 192.168.7.14 -uroot -proot -D sheep 可以连接到远程数据库,查看到里面的数据. 但是同一台服务器上用php去连竟然失败了 直接就输 ...
- mysql连接命令行,从命令行连接到MySQL
How can you connect to MySQL from the command line in a Mac? (i.e. show me the code) I'm doing a PHP ...
- mysql连接不上数据库
1.打开 DOS 窗口,输入 mysql 连接命令时,提示报错 Cannot connect to MySQL server on 'localhost' (10061),如下图: 2.上面问题原因 ...
- MYSQL连接不上本地服务器localhost
1 打开DOS窗口,输入mysql连接命令时报错Can't connect to MySQL server on 'localhost' (10061) 2 上面出现的问题原因是我们的本地服务没打开, ...
- mysql连接本地数据路命令_MYSQL 连接数据库命令收藏
一.MySQL 连接本地数据库,用户名为"root",密码"123"(注意:"-p"和"123" 之间不能有空格)C:\ ...
- mysql tree 修改_13.1 设置更改root密码 13.2 连接mysql 13.3 mysql常用命令
更改root密码 ps aux |grep mysql //先查看一下mysql是否启动了 /etc/init.d/mysqld start //启动mysql ps aux |grep ...
- 设置更改root密码(远程,本地)、连接mysql、mysql常用命令
设置更改root密码 1.将mysql加入环境变量中 [root@centos7 ~]# grep mysql /etc/profile export PATH=/usr/local/mysql/bi ...
- 中使用mysql连接失败_如何在命令行下使用 MySQL 连接数据库不用每次都输入密码?...
点击上方☝SpringForAll社区 轻松关注! 及时获取有趣有料的技术文章 本文来源:http://rrd.me/g7J9e 我们知道在命令行下可以使用下面的命令连接 MySQL ,其中 xxx ...
最新文章
- quick check
- 系统监控:top vs Htop vs Glances
- 石川es6课程---4、箭头函数
- 环美亚二十年装修师傅分享,甲醛的八种来源
- P4899-[IOI2018]werewolf 狼人【Kruskal重构树,主席树】
- Oracle查询所有序列;[oracle中如何创建表的自增ID(通过序列);oracle sql语句大全
- Pygame实战:升级后的2048小游戏—解锁新花样 根本停不下来
- 4由通道检测_博唐平四通道糖化血红蛋白检测仪通过上海临检中心性能验证(二)...
- JDBC未设置socket超时导致应用程序的线程池阻塞
- QTextEdit显示中文乱码解决,中文GB2312转Unicode,QString、QByteArray 转换,16进制显示,toUtf8与toLocal8Bit区别
- 只存活了9天,谷歌AI伦理委员会解散了:严重低估员工的战斗力
- 剑指offer(C++)-JZ7:重建二叉树(数据结构-树)
- wps excel连接MySQL数据库可刷新实时读取数据
- 机器学习实战 | 综合项目-电商销量预估
- 毕业设计之外卖点餐系统(App及后台)
- 病毒是什么?地球上万物都是相生相克的,那么病毒在自然界的天敌是什么?...
- 发送手机短信验证码-后端、前端(验证码倒计时)
- 详解Canvas动画部分
- Windows 10 磁盘重新分区
- python简单程序
热门文章
- 走入Mongodb v3.2+-姜威-专题视频课程
- kubeadm 安装 k8s 1.14.1版本(HA)
- zblog php 点赞,文章点赞开发版
- 论文阅读13:ENHANCING COLLABORATIVE FILTERING MUSIC RECOMMENDATION BY BALANCING EXPLORATION AND EXPLOITAT
- 今天做了个5.1倒计时牌
- 华为设备Telnet配置命令及注释
- 学习HTML的第一天
- 用Ultraiso刻录U盘装系统
- 一文看懂:数据指标体系的4大类型
- Day7 String类