yylovelei 发表于 2012-4-18 05:33:19

请教大家关于查询重复记录的问题,请大神进来,比较难,两表联合查询。

本帖最后由 yylovelei 于 2012-4-18 05:35 编辑

a表与b表字段都是相同的,字段为:
险种,车牌,发动机号,车大架号
现在想实现的是:
只要a表的险种与b表的险种相同,并且a表的车牌,发动机号,车大架号与b表的车牌,发动机号,车大架号只要3个中的一个相同,则显示出来相同的记录。
a表创建及记录:
DROP TABLE IF EXISTS `a`;
CREATE TABLE `a` (
`xianzhong` varchar(30) DEFAULT NULL,
`chepai` varchar(20) DEFAULT NULL,
`fadongji` varchar(30) DEFAULT NULL,
`chejiahao` varchar(30) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gbk;
INSERT INTO `a` VALUES ('DAA','吉B3120挂','无','');
INSERT INTO `a` VALUES ('DZA','吉B3120挂','无','');
INSERT INTO `a` VALUES ('DAA','暂未上牌','ABCD','无');
INSERT INTO `a` VALUES ('DAA','吉B3146挂','无','');
INSERT INTO `a` VALUES ('DZA','吉B3146挂','无','');

b表创建及记录:
DROP TABLE IF EXISTS `b`;
CREATE TABLE `b` (
`xianzhong` varchar(30) DEFAULT NULL,
`chepai` varchar(20) DEFAULT NULL,
`fadongji` varchar(30) DEFAULT NULL,
`chejiahao` varchar(30) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gbk;
INSERT INTO `b` VALUES ('DAA','吉B3120挂','无','LH9B3G40090HHT174');
INSERT INTO `b` VALUES ('DZA','吉B3120挂','无','LH9B3G40090HHT174');
INSERT INTO `b` VALUES ('DAA','吉B12345','','1345');
INSERT INTO `b` VALUES ('DAA','吉B3146挂','无','LH9B3G40990HHT173');
INSERT INTO `b` VALUES ('DZA','吉B3146挂','无','LH9B3G40990HHT173');

a表及b表及想要的结果图片如下,请大家帮帮忙,实在想不到该怎么查询了,先谢谢大家了。

yylovelei 发表于 2012-4-18 10:12:51

没人来吗?

yylovelei 发表于 2012-4-18 12:26:53

刚才在百度有个高手给了我这句

select b.* from a left join b on a.xianzhong=b.xianzhong where ( (a.chepai=b.chepai) + (a.fadongji=b.fadongji) + (a.chejiahao=b.chejiahao) )>1

yylovelei 发表于 2012-4-19 16:55:17

还是不对啊 没有解决

coky 发表于 2012-4-20 11:20:39

觉得你的需求没有说清楚啊,你上面的是两个相同的显示b的,而你要一个相同的,而且显示的是相同的部分,那么是显示A的还是B的。另外两个肯定是不同的,是不是是无的就不显示,显示存在的值?

yylovelei 发表于 2012-5-3 23:10:58

http://www.oschina.net/question/272636_49426

lovekiko520 发表于 2012-5-4 03:51:35

觉得你的需求没有说清楚啊,你上面的是两个相同的显示b的,而你要一个相同的,而且显示的是相同的部分,那么是显示A的还是B的。另外两个肯定是不同的,是不是是无的就不显示,显示存在的值?

ゞ年華之外ゞ 发表于 2013-6-14 10:30:07

SELECT DISTINCT(a.xianzhong),a.chepai,a.fadongji,b.chejiahao FROM a RIGHT JOIN b ON a.chepai=b.chepai WHERE a.fadongji!=''
页: [1]
查看完整版本: 请教大家关于查询重复记录的问题,请大神进来,比较难,两表联合查询。