0

我有一张看起来像这样的桌子(抱歉,桌子看起来很糟糕)

网站 | 埃内科德 | grnr      
------------------------------
评论 | inf1300 | 集团10
评论 | inf2220 | 集团10       
阿米尔夫 | inf1300 | gruppe7    
阿米尔夫 | inf2220 | gruppe7    
汉南斯 | inf1300 | 集团1    
尼纳克玛 | inf2220 | gruppe3    

我需要

A:返回 mnavn,其中 emnekode 是 inf1300 和 inf 2220(这很容易)

B:返回 bnavn,其中 inf1300 和 inf2220 的 grnr 是重复的。

我在执行 B 部分时遇到了麻烦 - 我尝试了 JOIN 和 WHERE EXISTS,但似乎没有任何工作正常。

到目前为止,我的代码是:

 SELECT DISTINCT bnavn
 FROM emnestud
 WHERE emnekode IN ('inf1300', 'inf2220')

我在设置下一部分时遇到了很多麻烦,如果有任何帮助,我将不胜感激。

4

3 回答 3

1
SELECT bnavn
 FROM emnestud
 WHERE emnekode IN ('inf1300', 'inf2220')
group by bnavn
having count(1)>1
于 2013-10-16T21:17:14.227 回答
0

此代码返回为 emnekode 重复的行

SELECT emnekode
 FROM emnestud
GROUP BY emnekode
HAVING
 COUNT(*) > 1

这对你有帮助吗?

于 2013-10-16T21:19:17.123 回答
0

尝试这个:

SELECT DISTINCT bnavn 
FROM emnestud 
WHERE grnr in(
  SELECT grnr
   FROM emnestud
    WHERE emnekode IN ('inf1300', 'inf2220')
    GROUP BY grnr
    HAVING COUNT(1)>1);

SQLFIDDLE

于 2013-10-16T21:34:48.597 回答