0

私は次のlinqを持っています:

    var result2 = Psl_Pt
                .Where(w => w.PaslNum == 33979)
                .GroupBy(a => new { a.GroupId })            
                .Select(a =>
     new  
     {
            Publish = a.All(g => g.Publish)

     });

同等のものは何ですか:

Publish = a.All(g => g.Publish) 

私が見るものから

.All(g => g.Publish) 

意味:

publish = 1

selectステートメントは次のとおりです。

select groupid from Psl_Pt
where publish = 1 and paslnum = 33979
group by groupid 

SQLへの変換が正しいかどうか教えてください

4

1 に答える 1

1

All()すべてのメンバーが条件を満たす場合はtrueを返します。この場合はPublish == true。したがって、SQLに相当するものは次のようになります。

SELECT groupid, SUM(NOT publish) as AnyNotPublish
WHERE paslnum = 33979
GROUP BY groupid
HAVING AnyNotPublish = 0;

そうでない場合は、publishを整数にキャストする必要があります。

于 2012-11-12T19:30:14.323 に答える