使用 IN 的 SQL 查询,但所有结果必须具有相同的分组 ID
不确定到底如何提出这个问题,所以对尴尬的措辞表示歉意,通常当我知道如何正确描述问题时,我可以使用网站搜索来查找它,或谷歌等。
无论如何,足够简单的问题 - 我正在查询具有 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
听起来你想进行关系除法。 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/