SQL

2022/01/03

4章のメモ。

SQL

みんな大好きSQL。説明不要!とはいかない。

Structured Query Languageの略。

章自体がかなり長い。それくらい知ってて当たり前のトピック。

別に書き方とかは基本応用取って知りませんとかあり得ないので、

気になったところだけ書いていく。

Select

COUNT

A(b,c,d)

count(*)とcount(b)は違う。

*は行数全てで、bにするとbのNULLがカウントされない。

知らんかった(お前まじか?)。

DDL

create

えっこれも仕様に入ってるの!?ってなった奴について書いた。

references

これは列じゃなくて表制約でしか使ったことない。

check

滅多に使わない。


column datatype check (column < 10000),

みたいに書くらしい。

外部キーの更新・削除規則

DELETEとUPDATEそれぞれかける。

カスケードしか知らんかった


ON [DELETE|UPDATE]

の後に続けて書く。

何もしない。

外部キー側にも同じように伝播する。

更新時、同じ値のみ外部キー側にも伝播する。ただしデフォルト値になる。

更新時、同じ値のみ外部キー側にも伝播する。ただしNULL値になる。

Create View

メリット

Select文いちいち書かなくてもいいよねーってことしか知らなかった。

本来ならアクセスできないテーブルの一部を抜き取って作成し、

権限を与えて隠しつつ見えるようにする。

更新

更新行を得的できる場合のみ可能。

DISTINCTとかしてしまうともう無理。

権限系

Grant toとRevoke from は覚えておこう。

内部結合

内部同士の指定した列同士で一致したもののみ結合させる。

natural

natural inner join

同一名の列を使ってjoinする。この場合、列名指定投資なくても良くなる。

外部結合

一致しなくても表示する奴。

どっちに合わせるかで左右指定できる。

物に加えて、左右のやつ(full)もある。初めて知った。

UNION JOIN

そのままくっつけて、開いた穴はNULL。

CROSS JOIN

直積演算するやつ。多分でんやろ(適当)


こんなもんかな。次こそたくさん書きそう。

>> Home