Sophia LearningにてIntroduction to Relational Databasesというコースを受講しました。
私は未経験からのエンジニア転職をした文系アラサー人間で、エンジニア3年目です。
SQLは普通に使っているのですが、しっかり丁寧に学んだことがないので、コースを進める中で意外と新規知識がいくつかありました。
数は少ないのですが、事前に知っていたらスムーズに進んだだろうなぁと思ったので、自分の知識定着も目的として知らなかった要点をまとめます。
感想
SQLを普段から使っている人であれば、テキストを見ないでクイズをどんどん解いていけます。
その中で「あれ、知らないぞ?」と思う内容があったらググりましょう。
使い方がわかれば簡単に解けると思います。
ただし、問題量がとても多いです。
考えたらわかる大量の問題をとにかく解き続けなければいけないので忍耐戦でした。
それでは、ここ知っておいたらいいよ!というポイント数点を紹介です。
SQLの使い方になります。項目がとても少ないです。
Create Role role_name ←シングルクウォート不要
CREATE ROLE文を書くとき、ロール名にはシングルクウォート(「’」)が不要。パスワード設定には必要。
CREATE ROLE southwest LOGIN PASSWORD '11111'
INHERITとは?
INHERIT NOINHERIT
これらの句は、ロールがそのロールが属するロールの権限を“継承”するかどうかを決定します。 INHERIT属性を持つロールは自動的に、直接またはメンバとして間接的に割り当てられたすべてのデータベース権限を使用します。 INHERITがないと、他のロール内のメンバ資格により得られる能力はそのロールへのSET ROLEだけです。 他のロールの持つ権限は、SET ROLEを行った後にのみ利用可能です。 指定されなかった場合のデフォルトはINHERITです。
NOINHERITをつけると、割り当てられた権限を使用しません。
どのインデックスをいつ使う?
B-Tree Index
「>」を使うとき。
SELECT * FROM invoice WHERE total > 5;
Hash Index
「=」で比較する時
SELECT * FROM invoice WHERE total = 5;
その他知識は結構普通
これ以外はあまり新規の知識はありませんでした。
しかしなんと言っても、分量が多い!
どこクイズも考えないと正解がわからないので、思ったよりもとにかく時間がかかりました。
仕事で必要に迫られてしかSQLを使ったことがなかったので、知識として学べてよかったです。
あとは、合ってると思ったのにうっかり選択を間違えたものが多かったです。
もう少し正答率は高いと思っていたのに…集中力の勝負です。
コメント