それでは今回は次の項目の勉強をしていきましょう。
関係代数演算
直積
選択(selection)
射影(projection)
結合(join)
関係代数演算
和
UNION
同じ構造の表をまとめて1つにする
同じ種類の表(項目,属性が同じ)
共通演算
intersection インターセクション
同じ構造の表に対して
共通する行を取り出す
差
difference
同じ構造の表に対して
一方から他方の行を
取り除く
直積
cartesian product
・構造は異なっていても演算可能
・2つの表の行のすべての組み合わせを求める
選択(selection)
条件を満たす行を抜き出す
select文の項目指定が選択演算
射影(projection)
指定した列を抜き出す
whereの条件部分が選択演算
結合(join)
複数の表に共通する項目(属性)で
突き合わせて一つの表にまとめる
結合キーが必要
構造は異なっていても演算可能
等結合
結合条件になっている項目もすべて重複して出す
自然結合
結合キーは片方しか列表示をしない
内部結合
inner join
結合条件の値が双方の表に
含まれていないと結合に導出されない
外部結合
outer join
結合条件の値が片方にだけあるものも
送出できる
left outer joinまたはright outer joinを使用する。
select *
from 社員 left outer join 部署
on 社員.部署No = 部署.部署No
上記の場合は左側が「社員」表になる為
社員表の全件と,社員表の部署Noに紐づく部署表の値が
選択される。
部署表に紐づく値がない場合は
部署表の項目はNULLとなる。
Right outer join はleft outer joinの
左右を逆にした書きかた。
基本的に実務ではleftしか私は使わない。
SQLやデータベースについてもっと学びたい方は次の記事でおすすめの書籍を紹介しています↓
<< 1 2 3 4 5 6 7 8 9 10 11 12 >>
#01_はじめに
#02_VisualStudio2022のインストール
#03_SQLServerのインストール
#04_データベースとテーブルの作成
#05_プロジェクトの作成
#06_接続先文字列の作成
#07_データテーブルでのデータの取得
#08_Sqlアクセスクラスの作成
#09_SqlDataReaderでのデータ取得
#10_SqlDataReaderの結果をカスタムクラスに入れる方法
#11_SqlCommandでInsert文を発行する方法
#12_SqlCommandでUpdate文を発行する方法
#13_Update対象がなかったらInsertする方法
#14_SqlCommandでDelete文を発行する方法
#15_Dapperでデータを取得する方法
#16_DapperでInsert文を発行する方法
#17_EntityFrameworkをインストールしてDbContextを作成する方法
#18_EntityFrameworkでデータを取得する方法
#19_EntityFrameworkでInsert文を発行する方法
#20_EntityFrameworkでUpdate文を発行する方法
#21_EntityFrameworkでDelete文を発行する方法
#22_Helperクラスを作ってSqlCommand操作を共通化する方法
#23_パフォーマンスチェックの方法
#24_4つのデータのとり方のパフォーマンスチェック
#25_4つの結果を踏まえて講評
#26_さいごに
下記URLは、ベネッセが提供する教育用プラットフォームにて
私が公開しているプログラミング学習コースです。
無料コースもあるので、よかったらご覧になってみてください。
【無料動画】「C#を勉強する順番」