1

私は単一のテーブルを持っています:

UserName | Completed
Moran | 0
Moran | 1
Moran | 1
Moran | 0
Russ | 1
Russ | 1
Russ | 1
James | 0
James | 0
James | 1

次の結果を取得するLINQクエリ(またはSharepoint 2010の場合はCAML)が必要です。

競合する列からの個別のユーザー名と0の数。これは、ユーザーMoranに2つの不完全なタスクがあり、Russにはタスクがなく、Jamesには2つあることを示しています。

モラン|2ラス|0ジェームス|2

次のクエリはSQLで機能します

SELECT DISTINCT a.UserName, (select count(*) FROM AmexTransactions WHERE Completed = 0 AND UserName = a.UserName) FROM AmexTransactions a

LINQまたはSharepoint2010オブジェクトのいずれかでこれが必要です。データはSP2010リストに保存されています。

4

1 に答える 1

0

これを試して:

var result = dataContext.AmexTransactions
                        .GroupBy(x => x.UserName)
                        .Select(g => new
                        {
                            UserName = g.Key,
                            IncompleteTasks = g.Count(x => x.Completed == 0)
                        })
                        .ToList();
于 2012-05-29T06:13:38.620 に答える