MySQL Query返回重复的结果

前端之家收集整理的这篇文章主要介绍了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

猜你在找的MySQL相关文章