多対多のいずれかの側のCOUNT(*)を取得するための最も簡潔なLINQ To SQL?
-
04-07-2019 - |
質問
健全性チェックを手伝ってください。多対多の関係を想定:
投稿、PostTagAssoc、タグhttp://www.codingthewheel.com/pics/many_to_many。 gif
各タグ(または投稿)に割り当てられた投稿(またはタグ)の合計数を示す結果セットを取得するための最も簡潔な方法(LINQ to SQLを使用)は何ですか?
ありがとう!
解決
from pta in db.PostTagAssoc
group pta by pta.PostID into t
select new {PostID = t.Key, TagCount=t.Count()}
他のヒント
これにより、タグが0の投稿も表示され、私の意見では少し明確になります。
from p in db.Post
select new {PostID = p.ID, TagCount = t.PostTagAssoc.Count}
所属していません StackOverflow