弱点分野の確認とか

こないだやった平成17年秋の午後問の解説を熟読。
俺はどうもSQLを英語の文法的に覚えていたらしく、たとえば
「INSERT文は…どっかの表に(to)挿入するんだから、
 "INSERT TO 表名〜"かなあ、たぶん…でも値の指定はどうするんだろう、WHERE句かなあ」*1
とか、
「DELETE文は…どっかの表から(from)削除するんだから、
 "DELETE FROM 表名〜"かなあ、たぶん。行の指定は、きっとWHERE句に違いない、と思いたい。*2
とか、
「UPDATE文は…どっかの表のどっかの行を更新するんだから、ええと、行の指定でWHERE句は使うはず…
 表の指定はなんだろう…FORかな……お願い神さま…そうだと言って…!*3
適当すぎだろういくらなんでも。>俺
しかも、そもそも土台の英語の知識も間違っている。最後のupdateは目的語を直接とれるのでそもそもforとか前置詞いらねえ罠。
…逆に言うと、こんなんでも情報技術者試験は受かったわけで、これから受けようかどうしようか迷ってる人はぜひ俺を励みにがんばってください。いや勉強はしましたよ。当時も。

*1:正しくは"INSERT INTO 表(属性1,属性2,…) VALUES (値1,値2…)"全列に値を挿入する場合は属性指定を省略できる

*2:一応正解だった。

*3:FORはループ命令。正解は"UPDATE 表 SET 更新する列名=更新後の値,… WHERE 条件" と、これ書きながら知ったんだけど、SQL ServerとかPostgreSQLだとFROM句で別のテーブル引っ張ってきて、その値をSETで使えるのな。便利だなあ