双向连接我有以下SQL结果集(作为加入FWIW的结果):查找表中的
A,C
B,E
C,A
D,A
每个值代表一个节点。所以涉及的节点总数是A,B,C,D,E。每行描述一个有向边。
A -> C
B -> E
C -> A
D -> A
当然,这可以简化为
A <-> C
B -> E
D -> A
现在我想筛选出不具有双向对应的行。所以,最终的结果集应该是
A,C
C,A
或
A,C
在这种情况下
。
我正在寻找在SQL中表达这一点的最佳方式。
'节点' 实际上是一个选择。因此,这似乎工作: 选择节点1,从 (选择...)N 其中存在的节点2(从 (选择...)× 其中节点1 = n.node2和节点2 = n.node1选择1 ) 但我想知道数据库优化器是否真的足够聪明,可以像这样高效地执行它。 – tcurdt 2009-02-17 02:38:31