問題タブ [linq-group]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
9693 参照

linq - 値が同じキーを共有する要素のリストであるキーと値のペアへのグループ化

フィールドのリストから「複雑な」オブジェクトを作成する方法

元。:

次のようなオブジェクトにグループ化します。

ps .: このクラスはまったく存在しません。

0 投票する
5 に答える
34182 参照

c# - LINQ - キーをグループ化してから、グループ化された各項目を個別の「バケット」に入れます

私はそのようなアイテムのリストを持っています:

1 Test1 1

2 Test2 1

3 Test3 1

4 List 2

5 List2 2

6 Testing 3

7 Testing2 3

8 Testing3 3

でグループ化し、ListIdそれらをそれぞれ個別のバケットに入れる方法はありますか。つまり、ListId1バケットにはすべてのアイテムがListId == 1. リストは SQL から動的に返されるため、いくつになるかは事前にわかりませんListId

0 投票する
1 に答える
158 参照

linq - linq to sqlでテーブルをグループ化して結合する

次の 3 つのクラスがあります (SQL テーブルにマップされます)。

Places テーブルと Events テーブルは Places.Name = Events.Place によって接続され、Events テーブルと Orders テーブルは Events.Name = Orders.EventName で接続されます。タスクは、イベントが与えられた場合に、そのイベントに残されたチケットを返すことです。キャパシティは場所が保持できる数で、Qty は誰かが注文したチケットの数です。したがって、Orders テーブルで何らかのグループ化が必要であり、その合計をキャパシティから減算します。

0 投票する
1 に答える
2760 参照

c# - linq、グループ化、カウント

いくつかのメンバーを持つユニオンのリストと、ユニオンごとのページ ヒットを含む別のテーブルがあります。各組合、各タイプのメンバーの数、およびクリック数 (ページ ビュー) を一覧表示するレポートが必要です。

クリックは、日付とユニオンIDを持つ別のテーブルにあります

これは近いですが、私が望む結果は実際にはありません。カウントにはメンバーの合計が表示されますが、クリックの合計は表示されません。総クリック数を取得するにはどうすればよいですか? (UnionID に一致するクリック テーブルのレコードをカウントします)

結果は次のようになります。

0 投票する
3 に答える
10607 参照

vb.net - VB.NET で LINQ グループ結合を使用する

VB.NETの下で LINQ クエリで Group Joins を使用する方法を理解しようとしています。何らかの理由で、構文で見つけたように見えるすべての例は、単純に間違っています! 少なくとも、それは私のコンパイラが私に言い続けていることです。ここで私が間違っているのは正確には何ですか?

これは、注文を注文アイテムに結合して、orderId によってグループ化された注文アイテムのコレクションを含むタイプになるようにする簡単な例です。

この例で現在実行しているのは、作成している「myOrders」グループで次のエラーが発生することです。

メソッド 'myOrders' の定義は、このコンテキストではアクセスできません。

0 投票する
1 に答える
1304 参照

c# - Linqグループをユーザー定義型に変換する

ac#プロジェクトに取り組んでいて、LINQクエリを作成しています。このクエリでは、グループを作成する必要がありますが、そのグループタイプを使用したいのですが、グループのタイプを使用すると、問題が発生します。希望のタイプにキャストします。

私のクエリは

0 投票する
4 に答える
375 参照

c# - 大量の文字列リストから同じ文字列数を数えます

私は60万行以上の文字列を持っています。同じ文字列をグループ化し、そのカウントを学習したい。

その例

したがって、結果は

可能な限り最速の方法でそれを行うにはどうすればよいですか?

0 投票する
5 に答える
34428 参照

c# - C# でのラムダ式 Group by

ItemNumberLINQ クエリを でグループ化し、 の合計を含むテーブル全体を返したいと思いますQuantity

これは私がグループ化しようとしているクエリです:

そして、これまでの私の最高の結果(これはコンパイルできません):

編集:

返信ありがとうございます、私はそれに直面しなければなりません。私の意見では、これらの匿名型を扱うのはかなり難しいので、別の解決策を見つけました。

ユーザーアイテムの数量を合計し、最初のアイテムをグループ化する別の方法を作成しました。

グリッドビューがあるページで、次のことを行いました。

0 投票する
2 に答える
1583 参照

asp.net - LINQtoSQLのグループ化とビューへの受け渡し

私はAsp.Net、MVC3、Linq、およびそれに関連する他のすべてに不慣れです。私はPHPとColdFusionに非常に慣れているので、無知を許してください。基本的に、私がやろうとしているのは、cfoutputのグループ属性と同等の機能を実行できるColdFusionでの状況を再現することです。私はストアドプロシージャを呼び出してから実行することに慣れています

<cfoutput group="id">

次に、データが異なる列の別の内部cfoutput。チャームのように機能します!Asp.Netではそれほど多くはありません。

1対多の関係で2つのテーブルから結合を返すストアドプロシージャを引き続き使用したいと思います。たとえば、フルネーム、タイトル、卒業年の3つの列があるとします。卒業年は結合されたテーブルの列であるため、ストアドプロシージャの結果は次のようになります。

ジム教授2005
ジム教授2008
ジム教授2011

これをビューに送信します。次に、列の1つ(おそらくフルネーム)に基づいてデータをグループ化するのがビューの仕事だと思います。3列のHTMLテーブルを出力したいのですが、この状況では1行になります。

ジム教授2005、2008、2011

私はグループキーと呼ばれるこのことを使用するたくさんの例をグーグルで検索しました。1つの値「Jim」(またはグループ化された値)を出力するだけでは興味がないため、これは役に立たないようです。各行に「Jim」と「Professor」の両方の値を出力する必要があります。私の考えでは、2つのforeachループが必要です。外側のループはフルネームとタイトルを表示し、内側のループは卒業年のすべての可能な一致を通過します。特にこのIGrouping構文では、グループで卒業年を取得できないようです。キーは1つの値しか格納できず、その行のすべての値が必要です。実際に繰り返す必要があるのは1つまたは2つの値だけです。セカンダリlinqグループ化を実行した後、カスタムビューモデルを作成して、それを厳密に型指定されたビューに送信する必要がありますか?

編集: わかりました、動作するコードがありますが、基本的にストアドプロシージャから持っているすべての列/値を再定義する必要があるため、非常に非効率的です。ストアドプロシージャを忘れて、すべてにLINQを使用したくなります。私が求めていたのは、一種の「複数の列のグループ」であり、リンクは非常に役立ちました。

もちろん、これを機能させるにはViewModelを作成する必要がありました。私の見解では、forループを使用して、学位と専攻のリストを反復処理できます。これはこれを行うための最良の方法ですか?通常、情報の行全体を表示するにはグループキー以上のものが必要であり、ほとんどの例でグループキーを1回だけ表示してすべてを繰り返すのではなく、20列の行でリストを1回または2回だけ繰り返します。そうか。