【发布时间】:2012-03-26 11:38:49
【问题描述】:
我偶尔会遇到这种模式,但我还没有找到非常令人满意的解决方法。
假设我有一个employee 表和一个review 表。每个员工可以有多个评论。我想找到所有至少有一个“好”评论但没有“坏”评论的employees。
我还没有弄清楚如何在事先不知道员工 ID 的情况下使子选择工作,而且我还没有想出正确的联接组合来实现这一点。
有没有办法做到这一点没有存储过程、函数或带来数据服务器端?我已经让它与那些一起工作,但我确信还有另一种方法。
【问题讨论】:
-
当然可以,但请从您的表格中给出相关结构! (即与
employee和review相关的列以及您如何确定评论的好坏(是否有一些列?)) -
我希望有一个更好的问题标题;除非这是一个相当知名的短语,否则我认为在搜索中找到它可能具有挑战性。也许“只获取另一个表上的聚合连接具有一个条件但没有另一个条件的记录”?
-
你寻找 A & B 之间的交叉连接和 A & C 之间的半反连接的交集。“A”代表员工,“B”代表好评,“C”代表差评。
-
我没有提供整个模式,因为这是确定“好”或“坏”所涉及的逻辑的简化版本。鉴于以下所有答案,我绝对认为我可以改进我目前的模型! :) 非常感谢!
-
@JaredFarrish 如果你能想到一个,我会全力以赴。你的建议似乎很先进。比如,如果我知道如何表达这样的问题,我可能已经知道答案了! ;)