Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql MS访问验证-根据第1列中的不同值,第2列中的所有值应相同_Sql_Validation_Ms Access - Fatal编程技术网

Sql MS访问验证-根据第1列中的不同值,第2列中的所有值应相同

Sql MS访问验证-根据第1列中的不同值,第2列中的所有值应相同,sql,validation,ms-access,Sql,Validation,Ms Access,我可以用一个例子更好地解释: 我需要验证一个表,“ProdID”列(比如713141535)的不同值是否在“AccountNo”列(比如2)中具有相同的值集,即带有“713141535”的ProdID具有相同的AccountNo,即“2”、“2”、“2”。(请参阅下面链接中的图片) 但是prodid'855325150'具有不同的AccountNo,即5,4,5。根据ProdID,所有帐号都不相同,因此验证失败 请您帮助我编写一个查询,以使用MS Access验证这种类型的场景 注意:每个版本都

我可以用一个例子更好地解释:

我需要验证一个表,“ProdID”列(比如713141535)的不同值是否在“AccountNo”列(比如2)中具有相同的值集,即带有“713141535”的ProdID具有相同的AccountNo,即“2”、“2”、“2”。(请参阅下面链接中的图片)

但是prodid'855325150'具有不同的AccountNo,即5,4,5。根据ProdID,所有帐号都不相同,因此验证失败

请您帮助我编写一个查询,以使用MS Access验证这种类型的场景

注意:每个版本都有新的表,所以我不知道表中的值,因为它每次都不同

谢谢

巴沙


您可以使用
DISTINCT
查找
ProdID
AccountNo
之间的不匹配,并将该记录集用作子查询

SELECT Sub.ProdID, Count(Sub.ProdID) AS CountOfProdID
FROM (SELECT DISTINCT ProdID, AccountNo
FROM Prod
)  AS Sub
GROUP BY Sub.ProdID
HAVING Count(Sub.ProdID) > 1
注意:我使用了
Prod
作为我的表名
Sub
是子查询的别名

SELECT Sub.ProdID, Count(Sub.ProdID) AS CountOfProdID
FROM (SELECT DISTINCT ProdID, AccountNo
FROM Prod
)  AS Sub
GROUP BY Sub.ProdID
HAVING Count(Sub.ProdID) > 1

此查询将返回在
AccountNo

@Basha Great中存在不匹配的
ProdID
!如果您觉得我已经充分回答了您的问题,请随意将我的帖子标记为“答案”,但单击我答案左侧上下箭头下方的灰色复选标记。这有助于其他可能需要相同解决方案的用户确定哪些有效,哪些无效。以下是网站指南: