使用 IN 的 SQL 查询,但所有结果必须具有相同的分组 ID

发布于 2024-10-21 00:52:27 字数 533 浏览 2 评论 0原文

不确定到底如何提出这个问题,所以对尴尬的措辞表示歉意,通常当我知道如何正确描述问题时,我可以使用网站搜索来查找它,或谷歌等。

无论如何,足够简单的问题 - 我正在查询具有 AttributeId 变量数组的链接/联结表,例如 ID 14 和 17。使用下表:

http://img220.imageshack.us/img220/5999/setattributecombo.gif

我想从此查询返回的唯一有效结果是 ProductSetId 相同的地方,因此而不是“IN”我想要类似

WHERE AttributeIds IN 14,17 AND ProductSetId is the same

在上面的示例中,唯一有效的结果是 5,但如果我使用 IN 查询,我会得到 2,5,7 作为结果。

有什么想法吗?

Unsure exactly how to put this question so apologies for the awkward phrasing, generally when I know how to properly describe a problem I can use the site search to look for it, or Google etc.

Anyway, simple enough issue - I'm querying a link / junction table with a variable array of AttributeIds, for example the IDs 14 and 17. Using the following table:

http://img220.imageshack.us/img220/5999/setattributecombo.gif

The only valid result I want to return from this query is where the ProductSetId is the same, so instead of 'IN' I want something like

WHERE AttributeIds IN 14,17 AND ProductSetId is the same

In the above example, the only valid result would be 5 but if I use an IN query I get 2,5,7 as results.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

野生奥特曼 2024-10-28 00:52:27
SELECT ProductSetID, COUNT(*) AS CountOfMatchingRows
From MyTable
WHERE AttributeId IN (14,17 )
GROUP BY ProductSetID
HAVING COUNT(*) = 2
SELECT ProductSetID, COUNT(*) AS CountOfMatchingRows
From MyTable
WHERE AttributeId IN (14,17 )
GROUP BY ProductSetID
HAVING COUNT(*) = 2
不回头走下去 2024-10-28 00:52:27

听起来你想进行关系除法。 Simple-Talk 上有一篇关于各种方法的好文章。 http: //www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/

It sounds like you want to perform Relational Division. A good article on various methods is over at Simple-Talk. http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文