MYSQL JOIN连接的类型探讨

1. 准备数据

执行脚本添加测试数据

//创建数据表
CREATE TABLE `user` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(45) CHARACTER SET latin1 DEFAULT NULL COMMENT '用户名',
  `phone` varchar(45) CHARACTER SET latin1 DEFAULT NULL COMMENT '电话',
  `email` varchar(45) CHARACTER SET latin1 DEFAULT NULL COMMENT '邮箱',
  `reg_time` int(10) unsigned NOT NULL COMMENT '注册时间',
  `last_time` int(10) unsigned NOT NULL COMMENT '上次登录时间',
  `state` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '用户状态',
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_UNIQUE` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=gbk;
CREATE TABLE `user_post` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` int(10) unsigned NOT NULL,
  `title` varchar(45) CHARACTER SET latin1 DEFAULT NULL,
  `content` text CHARACTER SET latin1,
  `time` int(10) unsigned NOT NULL,
  `state` tinyint(3) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_UNIQUE` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=gbk;
//导入测试数据
INSERT INTO `user` VALUES (1,'zhangshan','13623561234','zhangshan@qq.com',1536313909,1536313909,0),(2,'lisi','13612345678','lisi@qq.com',1536313969,1536313969,0),(3,'wangwu','13688888888','wangwu@qq.com',1536314005,1536314005,0),(4,'tom','13256897894','tom@qq.com',1536314050,1536314050,0),(5,'john','15566666666','john@qq.com',1536314086,1536314086,0);
INSERT INTO `user_post` VALUES (1,1,'ONE','This is test 1 by 1',1536378534,0),(2,1,'TWO','This is test 2 by 1',1536378534,0),(3,3,'ONE','This is test 1 by 3',1536378610,0),(4,5,'ONE','This is test 1 by 5',1536378633,0),(5,7,'ONE','This ia test 1 by 7',1536378657,0),(6,8,'ONE','this is test 1 by 8',1536378679,0);

2. INNER JOIN

这里写图片描述
结论分析:###

3. LEFT JOIN

这里写图片描述
结论分析:###

4. RIGHT JOIN

这里写图片描述
结论分析:###

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值