okinawa

IT勉強メモ

2023-02-01から1ヶ月間の記事一覧

【SQL】テーブル結合で行を増殖させないポイント

テーブル結合で行を増殖させないポイント 1対1で結合 1対多で結合 多対多で結合 DISTINCT・GROUP BYで増殖対策 テーブル結合で行を増殖させないポイント ON句の条件を 1対1 1対多 にする。 1対1で結合 ↑元テーブル SELECT t4.id, t5.id FROM table4 t4 le…

【SQL】3値論理とは

3値論理 普通は TRUE・FALSE の2つ。 SQLは TRUE・FALSE・UNKNOWNの3つ。 いつUNKNOWNになるの? NULLが絡むとUNKNOWNになる。 WHERE A = NULL -- UNKNOWNになる なのでIS NULLやIS NOT NULLがある。 WHERE A IS NULL OR A IS NOT NULL NOT AND ORでUNKNO…

集合指向言語と手続き型言語の違い

集合指向言語と手続き型言語 SQLとJavaで同じことをやってみる SQL Java 集合指向言語の思想 余談:MAX関数の内部処理 関連記事 参考 見返す用のかんたんなメモとして。 集合指向言語と手続き型言語 集合指向:まとめて処理 手続き型:1個ずつ処理 JavaのSt…

SQLの集合演算をテーブル結合でやってみる

SQLの集合演算 和集合:UNION / UNION ALL 差集合:EXCEPT 積集合:INTERSECT 関係除算を自力でやる 余りのある関係除算 厳密な関係除算 参考 集合演算子を使うよりテーブル結合のほうが処理が速いこともあるらしい。 SQLの集合演算 和集合:UNION / UNION A…

【SQL】特性関数とは

SQLの特性関数について 特性関数とは、入力項がある集合に含まれるかどうかを調べるための関数で、含まれるなら 1 を、含まれないなら 0 を返すものです²。例えば、次のようなテーブルがあるとします。 id name gender 1 A M 2 B F 3 C M このテーブルからge…

GROUP BYってなんなの?

Group Byとは 部分集合に分けるのがGroup By。 表示結果をみると行が減るから行が圧縮されるような印象を持っていたがそんなことはない。 元テーブル ・実行SQL select tenpo_cd from Table1 group by tenpo_cd 実行結果 イメージ図↓ Group By後 実行結果だ…

GROUPING演算子とWINDOW関数のフレーム

あまりちゃんと理解できていない。 自分用のメモとして。 GROUPING演算子 ROLLUP:小計、合計を出力 CUBE:3次元以上のデータ。よくわからなかった。→参考:https://it-trend.jp/bi/article/cube 元テーブル select tenpo_cd, bunrui, sum(value) from Table1…

SQL CASE式について

CASE式の書ける所 CASE式はELSE句を必ず書くべし! CASE式の書ける所 式なので「1+1」が書けるところならどこでもOK。 CASE式はELSE句を必ず書くべし! ELSE句を省略するとNULLが入る。 省略すると思わぬところでNULLが入るバグに繋がるので、ELSEを書く癖を…

SQL サブクエリについてのメモ

サブクエリの実行順序 スカラ・サブクエリ 相関サブクエリ 相関サブクエリをテーブル結合で書き換える 相関サブクエリの実行順序イメージ 参考 サブクエリの実行順序 サブクエリは内側から先に実行されるよ。 スカラ・サブクエリ スカラは「単一の」という意…

Group By句にないカラムを表示させたい

自己結合 やり方 参考記事 番外編(集約関数の中にCASE式) 自己結合 ・元テーブル Table1 例:店舗ごとの金額合計を出しつつ、他のカラムも表示する。 select * from Table1 t1 left join ( select tenpo_cd, sum(value) AS 'tenpo_total' from Table1 grou…

UNIONの使い所

参考記事 UNIONのイメージ UNIONの使い所 FULL OUTER JOINの使い所 参考記事 note.com UNIONのイメージ UNIONは縦にテーブル結合。 JOINは横にテーブル結合。 というイメージ。 UNIONの使い所 異なるテーブルの値を集計したいとき fruits table Meat table …

DB勉強メモ

インデックスって何なの? 参考記事 インデックスのイメージ クラスター化インデックス 非クラスター化インデックス エクステント(データ管理の単位) Viewって何なの? お勉強の内容を記憶に残すためにメモをば。 インデックスって何なの? 参考記事 とて…