如何返回与另一个表不匹配的行?

时间:2011-05-05 20:34:34

标签: nhibernate fluent-nhibernate

我正在使用流畅的nhibernate和nhibernate 3.1,我想知道如何进行查询以返回在另一个表中不匹配的结果。

假设我有来自tableA的5条记录和tableB中的3条记录。现在表3中的3与表B中的3匹配。

所以我想要返回这两行,因为它们不在TableB中。我看到的所有联接似乎都在寻找匹配并返回匹配。我想基本上回归差异。

如果说我有来自tableA的5条记录和TableB中的100条记录,但TableA的记录与TableB中的任何记录都没有匹配,我想返回tableA的所有记录。

1 个答案:

答案 0 :(得分:0)

嗯,我不确定我是否回答了正确的问题,你的描述似乎有点模糊......

有几种方法可以解决这个问题......

我想最简单和最简单的方法是使用SQL查询:

string sqlQuery =“从TABLENAMEA A中选择*,其中a.field不在(从TABLENAMEB b中选择b.field)”

results =(OBJECT)session.ExecuteSQL(sqlQuery);

请记住,我是从记忆中做到这一点,我知道这样做的设施存在......并且可能不会花费你一两分钟才能弄明白......