2
我有许多一对多的关系,我在其中查询具有特定的N-所有男,例如:如何高效地反转多对多SQL查询?
SELECT M.* FROM M INNER JOIN ManyToManyTable
ON M.Id = ManyToManyTable.M
WHERE ManyToManyTable.N = @Id
或者:
SELECT M.* FROM M INNER JOIN ManyToManyTable
ON M.Id = ManyToManyTable.M
INNER JOIN N
ON N.Id = ManyToManyTable.N
WHERE N.Id = @Id
我的问题是,如何以有效地反向查询,所以我得到所有M其中没有特定的N?
也就是说,像上面的选择NOT IN
,但如果可能的话没有NOT IN
声明。
+1。正是我想提出的建议。 – 2010-07-12 11:25:51
最有用的答案。 – Anax 2010-07-12 11:34:01
花了我一段时间,以适应我的确切需求(即 - 转化为NHibernate),但作品非常漂亮!很好的答案! – GeReV 2010-07-12 13:32:49