【发布时间】:2014-01-17 01:31:11
【问题描述】:
我正在尝试编写 sql 查询,该查询将从表中选择不同的列组合。
示例表数据:
+--+---+---+---+
|id|fk1|fk2|fk3|
+--+---+---+---+
|1 |1 |2 |3 |
+--+---+---+---+
|2 |1 |3 |3 |
+--+---+---+---+
|3 |2 |2 |3 |
+--+---+---+---+
|4 |2 |4 |3 |
+--+---+---+---+
|5 |3 |2 |3 |
+--+---+---+---+
|6 |3 |3 |3 |
+--+---+---+---+
|7 |3 |4 |3 |
+--+---+---+---+
在这里我需要编写一个返回 fk1 => 2 的查询,因为它具有 fk2 => 2 and 4 的唯一组合
如果问题不清楚,请告诉我。
谢谢
【问题讨论】:
-
为什么“2”是唯一的组合,而不是“1”?两者都与“3”完全相交。
-
因为我正在寻找 fk2 => 2 和 4 组合的行
-
您正在寻找 fk2 => 2 或 fk2 => 4 的行?还是您的意思是您需要 fk2 = 2 和 fk2 = 4 的所有行?
-
@SharikovVladislav fk2 => 2 和 4 是查询的输入。并且输出应该是 fk1 => 2