内容:SQL
事前にVMWAREにインストール済みのMYSQLを使っての 授業です。
だいたいわかるけど細かい部分はよくわかんない という私としては待ちに待った授業です。
というわけで貰った資料を見ながら授業そっちのけで ザバザバこなしていきます。
ごめんなさい。今日は授業を全く聞いてませんでした!
SQLの種類
DDL、DML、DCLってな3種類。 情報技術者試験に出てたからおぼえよー。
がんばってコマンド
create tableからはじまり一通りやりますよー。 Accessのときはさっぱり使わないのでよい練習でした。
データ型の説明
foreign keyの存在は初めて知りました。 要復習です。
エスケープという概念
特別な意味を持つ記号はそのまま入力すると使えない。 大抵使用したいときは「¥」とかつけます。 プログラム中もでてくるよー。
MySQLサイトからサンプルデータのダウンロード
https://dev.mysql.com/
→ Documentation
→ More
→ World database
以外にもサンプル探すのは面倒だし、自分で作るのはもっと。 こういうのあるのはありがたいです。
SELECTしつついろいろ
忘れがち
between 不等号式に頼りがち。あっちだと順番きにしなくていいんだもん。 betweenのがいい理由は何かあるのかな。
null where id is null と where id is not null ね。
group
これは慣れてない人がコマンドベースで理解できるのか本当に謎。
内部結合
外部結合との違いがよくわかんにゃい。Accessではあんまり使ってこなかったかもしれない。
外部結合
rightとleftの違いって矢印の向きというか順番の問題だけ?
サブクエリ
クエリの結果を条件に使うというパターン。Accessで使うと 極端に遅くなったことが多かったので印象が悪い。 これからはどんどん使えそう?
- Anyとall これの使い方ははじめてしったー。
疑問点
サブクエリ使って抽出結果が「含まれる」フィールド抽出 できそうで出来ないっぽい?
IN 資料にはどーものってないぽい。補足説明はあるのかあったのか。
Whereの()の区切り位置 実は試してないけどだいじょーぶ・・・よね。
Where id >5 and (sex =‘male’ or sex =‘female’)
Where (id >5 and sex =‘male’) or sex =‘female’
上下で抽出されるレコード違うよーというお話。