3

日付、評価、評価者、クラス名、スコア、件名を取得する6つのテーブルから取得するこのクエリがあります。

SELECT r.date, u1.username as rated, u2.username as rater, c.name as classname, s.ratings, sbj.name
FROM Ratings r
 INNER JOIN Users u1 ON u1.userid = r.rated 
 INNER JOIN Users u2 ON u2.userid = r.rater 
 INNER JOIN ClassMembers cm ON u1.userid  = cm.userid
 INNER JOIN Class c ON cm.teamid = c.teamid
 INNER JOIN Scores s ON s.ratingsid = r.ratingsid 
 INNER JOIN Subjects sbj ON sbj.subjectid = s.subjectid

これにより、

date         | rated | rater | teamname | score |  subject
10/12/2012    john     mike     teamA      9        Math
10/09/2012    john     mike     teamA      9        Science
10/09/2012    john     abra     teamA      5        Math
10/09/2012    john     abra     teamA      5        Science

このクエリをLINQ式に変換する必要があります。SQLクエリをLINQに変換するのに苦労しています。どんな助けでもいただければ幸いです。

4

2 に答える 2

3

これは、joinを介して行うことができます。

var results = from r in Ratings
              join u1 in Users on u1.userid = r.rated
              join u2 in Users on u2.userid = r.rater
              join cm in ClassMembers on cm.userid = r.rated
              join c in Class on cm.teamid = c.teamid
              join s in Scores on s.ratingsid = r.ratingsid
              join sbj in Subjects on sbj.subjectid = s.subjectid
              select new 
                     {
                        Date = r.date, 
                        Rated = u1.username,
                        Rater = u2.username,
                        ClassName = c.name,
                        Ratings = s.ratings,
                        Subject = sbj.name
                      };
于 2012-10-24T16:22:40.503 に答える
0

個別のサブキャットをCatID、CatName、CatIDとしてサブキャット、サブカテゴリから選択(a.CatName、b.CatNameをサブカテゴリとして選択、a.CatIDをサブキャットとして、b.CatIDをIris_CategoryMasterから内部結合Iris_CategoryMaster b on a.CatID = b.ParentIDここで、b.Status = 1)as x

于 2014-03-20T06:01:09.310 に答える