本文演示了mysql的左右
连接的使用:
一个示例用于解析下一个MySQL的左连接、右连接和内部连接。
复制代码代码如下:
创建表user_id(ID十进制(18));
创建表user_profile(ID十进制(18),名为varchar(255));
插入user_id值(1);
插入user_id值(2);
插入user_id值(3);
插入user_id值(4);
插入user_id值(5);
插入user_id值(6);
插入user_id值(1);
插入user_profile值(1,AA);
插入user_profile值(2,BB);
插入user_profile值(3,CC);
插入user_profile值(4,DD);
插入user_profile值(5,ee);
插入user_profile值(5,ee);
插入user_profile值(8,'zz);
1。左连接:
代码复制代码如下:MySQL >选择张身份证,ifnull(b.name,n /)的
名字从user_id左。
MySQL >选择张身份证,ifnull(b.name,n /)的名字从user_id左。
+ + +
| ID |名字|
+ + +
| 1 | AA |
| 2 | BB |
| 3 | CC |
| 4 | DD |
| 5 | EE |
| 5 | EE |
| 6 | n / |
| 1 | AA |
+ + +
8行(0秒)
user_id是左,所以叫左连接。在这种
情况下,在user_id所有记录被列为user_id.there以下三例:
1,在user_id每个记录,如果对应的ID是一样的user_profile和只有一个,它会在返回结果的新纪录。在1, 2, 3的情况下,和4以上。
2、每个ID记录在user_id,如果对应的ID也就在user_profile有N,那么N个新纪录将在结果形成返回。在5以上的情况下。
3,每个记录在user_id,如果对应的ID不存在user_profile,它会在返回结果的新纪录,和零的记录的右侧,在6以上的情况下。
不符合上述三项规则的记录将不列入名单。
例如,
查询数据,不能在相关表中存在,通过ID
关联,
检查出存在的记录在user_id表中不存在的user_profile:
复制代码代码如下:select count(*)从左上user_id加入user_profile user_id.id = user_profile.id哪里user_profile.id。
两。
正确的连接
user_profile是正确的,所以它是正确的连接。在这种情况下,列出了所有记录的user_profile,即的user_profile,。在下列情况中,有三例:
1,在user_profile每个记录,如果对应的ID是一样的user_id和只有一个,它会在返回结果的新纪录。在2, 3, 4的情况下,和5以上。
2、每个ID记录在user_profile,如果对应的ID也就在user_id有N,那么N个新纪录将在结果形成返回。在1以上的情况下。
3,在user_profile每个记录,如果对应的ID不存在user_id,就会形成新的记录结果中返回,和零记录的左侧,在8以上的情况。
不符合上述三项规则的记录将不列入名单。
三。内部连接
在MySQL中连接的数据记录中,没有字段是null的情况,可以简单地认为,内部链接的结果是在左连接或右连接的结果之后,
删除字段null的记录的结果。此外,MySQL不
支持完全连接。
复制代码代码如下:MySQL >选择*从user_id内加入user_profile B对张=数据;
+ + + +
我的名字| | | |
+ + + +
| 1 | 1 | AA |
| 1 | 1 | AA |
| 2 | 2 | BB |
| 3 | 3 | CC |
| 4 | 4 | DD |
| 5 | 5 | EE |
| 5 | 5 | EE |
+ + + +
7行(0秒)
MySQL >选择*从user_id一张,user_profile B =数据;
+ + + +
我的名字| | | |
+ + + +
| 1 | 1 | AA |
| 1 | 1 | AA |
| 2 | 2 | BB |
| 3 | 3 | CC |
| 4 | 4 | DD |
| 5 | 5 | EE |
| 5 | 5 | EE |
+ + + +
7行(0秒)
MySQL >选择*从user_id加入user_profile B对张=数据;
+ + + +
我的名字| | | |
+ + + +
| 1 | 1 | AA |
| 1 | 1 | AA |
| 2 | 2 | BB |
| 3 | 3 | CC |
| 4 | 4 | DD |
| 5 | 5 | EE |
| 5 | 5 | EE |
+ + + +
7行(0秒)
希望本文能对大家的mysql
程序设计有所帮助。