投稿

12月, 2025の投稿を表示しています

12月22日(月)1コマ目

今日、やったこと [練習問題]LINQ 練習問題4 [練習問題 解説] LINQ 練習問題4 今日のホワイトボード [練習問題 解説] LINQ 練習問題4 正解例をあげておきます。 なお、おなじみの Group.cs Item.cs Sales.cs SalesDetail.cs SushiDbContext.cs App.Config はいつもどおりです。 問1 問2 問3 問4 問5 問6 group by句にて、商品名とグループ名の組み合わせでグループ化をしているが、両方ともNameプロパティのためこのままではコンパイルエラー。プロパティ名をItemName、GroupNameと指定している。 問7 問8 問9 問10 問11 次回は ASP.NET Core MVC + LINQでDBアクセスをおこなうWebアプリケーション作成。

12月15日(月)1コマ目

イメージ
今日、やったこと [LINQ]グループに対する条件 [練習問題]LINQ練習問題4 今日のホワイトボード  [LINQ]グループに対する条件 SQLのhavingに相当するグループに対する条件の指定。 LINQにはhavingはない。代わりに group byの後でwhereでグループに対する条件を指定する 。 よって、場合によっては1つのLINQのクエリ式にwhereが2つ登場する。 図 グループに対する条件はgroup byのあとにwhereで なお、行の並び替えのorderbyはselectの前。 グループ化してなければ、行の並び替え => 列名指定 グループ化していたら、グループの並び替え => グループ化した際のプロパティを指定 サンプル お馴染みの Group.cs Item.cs SushiDbContenxt.cs App.Config はいつもとおり。 Program.cs 次回は 練習問題4の続き。

12月8日(月)1コマ目

今日、やったこと [LINQ]複数列でグループ化 [練習問題]LINQ練習問題3 今日のホワイトボード 複数列でグループ化 以下が単一プロパティ(=列)でグループ化する場合と異なる。 〇グループ化する際のキーとなるプロパティ(=列)の指定 byにあとに、グループ化のキーとなる列の匿名クラスを作成。 この匿名クラスのプロパティ値が同じなら、同じグループになる。 〇Keyプロパティ グループ化のキーとなるプロパティを表すKeyプロパティには複数列が含まれる。   Key.プロパティで各プロパティを取得する 。 サンプルプログラム 売上日と商品名でグループ化し、各グループの売上金額を取得。 Sales.cs 売上データテーブルに対応するクラス。 SalesDetail.cs 売上詳細データテーブルに対応するクラス。 SushiDbContext.cs 追加したSalesクラス、SalesDetailクラスを使って、cs_売上データ一覧、cs_売上詳細データ一覧のプロパティを追加。 Program.cs [練習問題 解説]LINQ練習問題3 正解例をあげておきます。 以下のクラスはサンプルプログラムと同じ。 Group.cs Item.cs Sales.cs SalesDetail.cs SushiDbContext.cs ①売上毎の商品点数(数量の総和)を出力 ②売上日毎の売上件数を出力 ③商品毎の売上総数を出力 ④売上日毎の売上総数を出力 ⑤商品毎の売上総額を出力 ⑥売上日毎の売上総額を出力 ⑦グループ毎の売上総数を出力 ⑧売上日毎の各グループの売上総額を出力 ⑨売上毎の各グループの売上件数を出力 ⑩グループ名が にぎり または まき の商品毎の売上総額を出力 ⑪価格が1,000 円代(1,000~1,999)の商品の商品毎の売上件数を出力 次回は グループに対する条件(having)。