我有一个包含两个独立字段a和b的数据库。我想知道,对于a的任何给定值,是否有多行具有不同的b值。
我尝试过使用groupby和distinct,但是我做了一些错误的事情,因为我不断得到结果,当我查询a的特定值时,b的所有值都是相同的。我尝试了以下几种变体,包括:
SELECT COUNT(B) FROM ex1 GROUP BY A HAVING COUNT(*) > 1;
SELECT COUNT(DISTINCT B) FROM ex1 GROUP BY A HAVING COUNT(DISTINCT B) > 1;
奇怪的是,最后一个给我的结果是,对于给定的b值,有多个a值,这与我想要的相反。在上一个查询中,我尝试反转a和b,但结果是a只有一个值b。
只有在多个记录中有一个特定的a值,而每个记录的b值都不同的情况下,我如何才能得到这些记录?
2条答案
按热度按时间bihw5rsg1#
试一试:
只有在多个记录中有a的特定值的情况下的记录,每个记录都有不同的b值
并且,如果您想包括a和b只有1条(不同)记录的情况,可以删除最后一个select。
yyyllmsg2#
这应该起作用: