微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL Query返回重复的结果

我是MySQL的新手,我正在使用一个数据库系统,它有四个主表,如下所述:

http://www.pastie.org/3832181

查询主要使用的表位于:

http://www.pastie.org/3832184

看起来相当简单吧?

我的查询的目的是获取OpportunityID为NULL的显式用户的所有BusinessID,一旦它具有那些BusinessID,我希望它在Business表中找到关联的BusinessName,并将该BusinessName与EmploymentOpportunity中的BusinessName(Business)相匹配表.

这是我执行该操作的查询.

SELECT EmploymentOpportunity.OpportunityID,Business,Description 
FROM UserBusinessOpportunity,EmploymentOpportunity
WHERE UserBusinessOpportunity.BusinessID = 
          (SELECT UserBusinessOpportunity.BusinessID 
          FROM UserBusinessOpportunity 
          WHERE UserBusinessOpportunity.UserID=1 AND
                UserBusinessOpportunity.OpportunityID is NULL) 
       AND UserBusinessOpportunity.BusinessID = Business.BusinessID 
       AND Business.BusinessName = EmploymentOpportunity.Business;

sub-select语句应该返回BusinessID的子集.我确信这是一个非常简单的查询,但它一直给我重复的结果,我很确定为什么.结果集应该是3,但它发送给我24个,或者8个重复的那些3.

谢谢,如果你能帮我解决这个问题.

最佳答案
使用distinct关键字删除重复项.

看看here

原文地址:https://www.jb51.cc/mysql/433069.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐