0

リストがあり、myID 値に基づいてそのリストから 2 セットの行を取得したいと考えています。ただし、「myOtherField」で同じ値を持つ2つのアイテムを取得したくありません。これは SQL では簡単です。Linqでこれを達成できますか?

select * from myTable where myID = 25

union

select * from myTable where myID = 35
and myOtherField not in (select myOtherField from myTable where myID = 25)
4

1 に答える 1

0

http://msdn.microsoft.com/en-us/library/bb386993.aspx

LINQ で「not in」クエリを実行するにはどうすればよいですか?

var query =
(from obj in MyTable
select obj)
.Union
    (from obj in Mytable
where obj.myid = 35 && !(from obj.myotherfield in mytable   
        select obj)    
       .Contains(obj => obj.myid=25)    
    select obj)

;

于 2012-09-17T20:48:24.390 に答える