mysql中的on
左右连接是一个性质所以我这里以左连接为例,写了一个小例子:
用到连接的时候on会常用到,
on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。
简单解释就是假设两个表A、B。
以A表为左,B表为右。
如果是ON A.key = B.key,如果符合条件那么B表的内容也会列出来
如果不符合条件 那么A表的属性会显示,但是B表的内容就全部显示为NULL
可以把我的代码复制一下试试,我的建表方式比较蠢花了很长时间。你萌可以自己采用自己的方式
mysql> create table demo1(
-> id int,
-> name varchar(10),
-> pwd varchar(9));
Query OK, 0 rows affected (1.28 sec)
mysql> create table demo2(
-> son int,
-> em varchar(9),
-> name varchar(10),
-> pwd varchar(8));
Query OK, 0 rows affected (1.56 sec)
mysql> insert into demo1 values(1,"hj","hj");
Query OK, 1 row affected (0.09 sec)
mysql> insert into demo1 values(2,"hx","hx");
Query OK, 1 row affected (0.11 sec)
mysql> insert into demo1 values(3,"zzd","zzd1");
Query OK, 1 row affected (0.11 sec)
mysql> insert into demo2 values(1,"zz","zz123","zzd");
Query OK, 1 row affected (0.15 sec)
mysql> insert into demo2 values(2,"hh","hh123","HH");
Query OK, 1 row affected (0.11 sec)
mysql> insert into demo2 values(3,"HIAHIA","hj","hx");
Query OK, 1 row affected (0.15 sec)
mysql> select s.*,d.* from demo1 s LEFT JOIN demo2 d ON s.name = d.name;
+------+------+------+------+--------+------+------+
| id | name | pwd | son | em | name | pwd |
+------+------+------+------+--------+------+------+
| 1 | hj | hj | 3 | HIAHIA | hj | hx |
| 2 | hx | hx | NULL | NULL | NULL | NULL |
| 3 | zzd | zzd1 | NULL | NULL | NULL | NULL |
+------+------+------+------+--------+------+------+
3 rows in set (0.01 sec)
mysql>
aaarticlea/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" alt="点击并拖拽以移动">
mysql中的on的更多相关文章
- MySQL中You can't specify target table for update in FROM clause一场
mysql中You can't specify target table <tbl> for update in FROM clause错误的意思是说,不能先select出同一表中的某些值 ...
- MySql中in和exists效率
mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询.一直大家都认为exists比in语句的效率要高,这种说法其实是不准确的 ...
- [原创]MYSQL中利用外键实现级联删除和更新
MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...
- mysql中的多行查询结果合并成一个
SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md.mimetype_id= 5 ...
- 【转】MySql中的函数
原文:http://www.cnblogs.com/kissdodog/p/4168721.html MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: ...
- sqlserver 中数据导入到mysql中的方法以及注意事项
数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...
- MySQL中有关TIMESTAMP和DATETIME的总结
一.MySQL中如何表示当前时间? 其实,表达方式还是蛮多的,汇总如下: CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME ...
- MySQL中索引和优化的用法总结
1.什么是数据库中的索引?索引有什么作用? 引入索引的目的是为了加快查询速度.如果数据量很大,大的查询要从硬盘加载数据到内存当中. 2.InnoDB中的索引原理是怎么样的? InnoDB是Mysql的 ...
- B-Tree索引在sqlserver和mysql中的应用
在谈论数据库性能优化的时候,通常都会提到“索引”,但很多人其实并没有真正理解索引,也没有搞清楚索引为什么就能加快检索速度,以至于在实践中并不能很好的应用索引.事实上,索引是一种廉价而且十分有效的优化手 ...
- MySQL中CURRENT_TIMESTAMP(转)
1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp() 代码如下 mysql> select current_timestamp ...
随机推荐
- Eclipse快速入门:远程调试Java应用
Eclipse快速入门:远程调试Java应用 2012年03月27日00:00 it168网站原创 作者:皮丽华 编辑:皮丽华 我要评论(0) 标签: Eclipse , Java , Java框架, ...
- win+E 出现“未指定错误“修复方案
windows7 (win7) win+E 出现"未指定错误----"解决方法 出现该问题的原因:大家使用某种注册表优化所致,如使用优化大师等优化注册表-- 解决方法: 1.如果优 ...
- ajax学习相关
choices参数 当存在某个字段的值只有有限的几个时,如性别(只有男.女),婚否(已婚.未婚)等,这种情况,我们可以用数字来代替这些中文字符,可以减轻数据库的负担,这时,就需要用到choices参数 ...
- Spring Boot 鉴权之—— JWT 鉴权
第一:什么是JWT鉴权 1. JWT即JSON Web Tokens,是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519),他可以用来安全的传递信息,因为传递的信息是 ...
- 测试工程师不懂AI,还有未来吗?
阿里妹导读:近几年人工智能.机器学习等词漫天遍地,似乎有一种无AI,无研发,无AI,无测试的感觉.有人说:不带上"智能"二字,都不好意思说自己是创新.我们先暂且不评论对错,只探讨这 ...
- HTC“卖身”:那些辉煌、落寞与终结
9月21日,HTC董事会决议通过与谷歌签订合作协议书.前者专注Pixel手机设计研发人才加入谷歌,HTC知识产权非专属授权予Google使用,交易作价11亿美元.事实上,这与微软收购诺基亚不同,并非是 ...
- 直播内容大面积偏轨:都是high点的错?
当下的直播行业看似火爆,却是外强中干.直播平台数量的暴增.主播人数的飙升.直播内容同质化严重等问题,都在成为新的行业症结.而面对复杂的情况,不仅刚入行的小主播,就连爆红的大主播都感到寒冬的难熬.为了能 ...
- sublime安装vue插件
1.打开sublime text 3按 Ctrl+Shift+P(相信你有单身的手速,同时按完这3个键) 2.选中上图中,框出来的内容,按下enter. 3.选择上图的第二个即:vue syntax ...
- P1102 A-B 数对
P1102题库链接:https://www.luogu.org/problem/P1102 难度:普及- 算法标签:模拟,数论,排序,HASH,概率论,二分查找 1.朴素 O(n^2) 得分76 将输 ...
- sql04
1.类型转换 ),ClassId)+name from [user]; 2.一次性插入多条数据 3.日期函数 1)getdate() 返回当前日期 2)dateadd 计算增加后的时间 ,'2020- ...