3

SQLでこのコードのLinqtosqlクエリを作成するにはどうすればよいですか?いくつか試してみました。これは私の基本的なコードです:

List<Movie> movies =
(from item in db.Movies select item).ToList<Movie>();
return movies;

結果としてこれが欲しいのです。

select (Won/Total) as 'rankPercentage'
from dbo.Filmranking
order by rankPercentage desc

ありがとう

4

3 に答える 3

0

投影と呼ばれるものが必要です。次のようなものが必要です。

var result = db.Movies
             .Select(x => new { title=x.Title, rank = (x.Won/x.Total) })
             .OrderBy(x => x.rank);

編集多分あなたはタイトルがあなたの記録を識別することを望みます:)

于 2012-11-14T15:48:51.833 に答える
0
item.Won / db.Awards.Count

カウントはプロパティですか?私はそう思う。

于 2012-11-14T15:52:59.397 に答える
0
var movies =
    (from items in db.Movies
    select new { RankPercentage = item.Won / item.Total })
    .ToList();

この時点で、ムービーはList<T>、基になるSQLタイプに応じてTがfloatまたはintになる場所になります(これはあなたの質問からは識別できません)。本当にこれをとして投影したい場合はList<Movie>、次のように投影する必要がありますが、結果がSQLテーブルと一致しない可能性があります。

List<OtherMovieType> movies = 
    (from items in db.Movies 
     select new OtherMovieType() {
         Name = item.Name,
         RankPercentage = item.Won / item.Total
         })
       .ToList();
于 2012-11-14T16:04:31.827 に答える