作者:swaimprichett_556 | 来源:互联网 | 2023-10-13 13:15
两个表数据如下:其中有一条数据是完全相同的使用union查询结果:会删除重复的行SELECT*fromstudentUNIONselect*fromstudent2;结果:相同
两个表数据如下:其中有一条数据是完全相同的
使用union查询结果:会删除重复的行
SELECT * from student
UNION
select * from student2;
结果:相同的数据被过滤掉了
使用UNION ALL不会删除重复的行
查询
SELECT * from student
UNION ALL
select * from student2;
结果:相同的数据依然存在
附上建表语句
CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(30) DEFAULT NULL,`age` int(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;INSERT INTO `student` VALUES ('4', '张三', '21');
INSERT INTO `student` VALUES ('2', '李四', '56');
INSERT INTO `student` VALUES ('3', '王五', '18');
INSERT INTO `student` VALUES ('1', '张一', '13');CREATE TABLE `student2` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(30) DEFAULT NULL,`age` int(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;INSERT INTO `student2` VALUES ('1', '张一', '13');
INSERT INTO `student2` VALUES ('2', '帝皇侠', '22');
INSERT INTO `student2` VALUES ('3', '蜘蛛侠', '25');
INSERT INTO `student2` VALUES ('4', '炎龙侠', '18');