このホームページは?
このホームページは「SQLプログラミング入門」( ISBN4-7973-0587-8 )を、もっと楽しく、もっと効果的に理解できるように生まれたホームページです。
本書の監修者である私 木村博文 が管理運営を行っています。
ここでは、実際に本書では殆ど述べられていなかった、各プラットフォーム毎の設定から始まり、SQLツールの使用方法、今までに寄せられた質問とその解答、および追加のサンプルプログラムなどで構成されます。
また、本書で取り上げなかった、役に立つ(?)ボツ原稿も公開する予定です。
このように、基本は本書の内容を補足するためのページとなるのですが、できるだけ本書を購入していない人たちでも楽しめるようにしていこうと思っています。
各固有のプラットフォーム毎の設定の方法やSQL文の記述方法など、SQL初心者の方にとってはきっと為になるでしょう。

また、このページでも本書と同じ構成でそれぞれのレッスンの解説を一通り行う予定ですので基本的な事項はこのページでも網羅しています。ただし、色々な問題がありまして本の内容がそのままこのページに載ることはありません。逆にこのページに記載されている内容と各レッスンのページの最後に記載されている「本書での要点」を押さえて頂ければ、ほとんどのSQLに関する知識が得られるはずです。本書を持っている方も、そうでない方も是非ともご覧ください。

なお、このページを管理するにあたってお願いしたいことがあります。このページは本書「SQLプログラミング入門」をサポートするために生まれたページですが、頂いた質問の全てに答えられる訳ではありません。このような場合は、掲示板に記入するようにして頂けると幸いです。また、もしわかる人がいれば遠慮なく返答してあげて下さい。

宜しくお願いいたします。

「SQLプログラミング入門」について
「SQLプログラミング入門」(以下本書と呼びます)とは、主にデータベース初心者から中級者を対象としたSQLの入門書です。元々は「Teach Yourself SQL in 21 Days」( ISBN 0-672-31110-0 )と呼ばれる洋書でして、実際本書に記述されているSQL文のほとんどがこの本の例題から来ています。原書の方はその題名の通り、1日1章、21日ですべてが学べるように構成されていたのですが、本書ではその最初の半分とSQL文の全ての構文が学べるまでの部分をを抜き出し、全部で12のレッスンとして再構成されています。
この原書は結構有名(シリーズ)なので、知っている方もたくさんいるのではないでしょうか。ちなみに、ORACLEやSybaseなどのサイトでも紹介されたことがあります。
さて、本書は基本的にこの原書からの翻訳書として世に出回っているのですが、実はその内容(特に前半の部分は)、かなり日本向けにローカライズがされています。本書の冒頭にも書かれているのでお気づきの方もいるでしょう。原書ではそれぞれのレッスンで著者が異なるところもあるため、統一されていない記述や、洋書特有のジョーク(個人的には好きだったのだが。。。)および意味不明の記述などがありました。これらを、全て統一し不必要な部分は切り捨てられ、また、重要な部分は加筆も行われています。その分、内容も濃く日本人好みで読みやすく、理解しやすくなっていると思います。
また、乱立したデータベース環境で記述されていたSQL文をなるべく多くのプラットフォームにおいて動作するように基本的なものに入れ替えてあります。実はOracleがメインの環境としてテストされているのですが、表記されているサポートプラットフォームに対してすべてテストされています。すれゆえ、もしプラットフォーム毎の違いがあればそれも記載しています。

なお、今後は、サポートするプラットフォームを出来るだけ増やして個々のデータベースに対応していきたいと思います。

このホームページの目的
「SQLプログラミング入門」は、SQL文の文法、使い方、記述の方法などSQL言語自体の仕様規約を解説した入門書です。よって、ここでの内容も比較的初心者を対象としています。
ですから、簡単なことでもわからないことがあったら遠慮なく掲示板に質問しましょう。適切な解答が得られるかもしれません。
また、上級者の方たちでもSQLの復習および自分の知識の確認ができるよう役立ててもらえればと考えています。

監修者のことば
InsideWindowsという雑誌を御存知の方も沢山いるかとは思いますが、私が最初にSQLに関して書いたのがこの雑誌の特集でした。(1998年1月号) 結構評判がよかった(と、思う。実際はよく知らない。。。)ので、同じソフトバンクの方から、本書の監修の仕事を頂きました。実はこの仕事を頂く一週間ぐらい前にもこの記事を見て本を書かないか?という誘いがあったのですが、依頼してくださった人の考えと自分の得意分野にちょっと違いがあったので断ったのでした。
と、すこし自慢してしまった訳ですが、それだけInsideWindowsの記事は自分でもよく書けたと思います。
ただ、私は今それ以上にこの本は良い本であると思っています。
これを読んでいる皆さんは本書は翻訳書ですから、監修者である私はまったく関係がないと思っているかも知れません。でも、そんなことはありません。特にレッスン1とレッスン2は大胆に書き直しています。また、サンプルの例題も、サポートプラットフォームにおいてはすべてテストして、もし不具合があれば書き直しています。ただ単に、翻訳しただけなんて文章はありません。それぞれが重要でかつ丁度よく一冊の本にまとまっているのです! すばらしい。
と、あまりにも大袈裟なことを書いてしまい一人ではしゃいでしまいまして申し訳ありません。
ちなみに、私の思うこの本の唯一の弱点は値段が3千円を超していると言うことでしょう。申し訳ない。ソフトバンクの担当の方もかなりこの辺を悩んでおりました。やっぱり翻訳書ってどうしても高くなってしまうものなんですね。残念。

さて、話は変わりますが本書の冒頭に前書きがあるかと思うのですが、実はこの文章、殆どソフトバンクの方が書いた文章です。監修者のことばに(とは書いてありませんが。。。)監修者の言葉が無いなんで悲しいです。
というのも色々な理由がありまして(締め切りや本自体の方針などなど)実はこれまたボツになってしまったというわけです。
と、いう訳でここでは私が書きました「監修者まえがき」をそのまま掲載しておきたいと思います。

監修者まえがき
 データベースはコンピューターがもっとも活躍している分野の一つだと思います。コンピュータを使ったあらゆるアプリケーションには何らかの形でデータが蓄積され一種のデータベースが構築されています。特に業務用のアプリケーションの場合、その殆どが単なる大きなデータのかたまりと言っても過言ではないでしょう。
このように、本来なら、コンピューター界の花形的職業となってもおかしくはなさそうな分野なのですが、実際にはそうでもないようです。
コンピューターといえばインターネットや流行のオブジェクト指向言語ばかり注目され、あまりデータベースには目を向けられません。
当たり前のことながら、データベースには派手さがないのです。(会社は派手な所もありますが。)実際、私も本当は、データベースという言葉を聞くだけであまり気が進まなかったという時期がありました。周りの人はグラフィカルなユーザーインターフェースの作成を楽しそうに行なっているのになんで私がSQLなんてやらなければならないの?といった感じです。しかし、嫌々ながら実際にデータベースを使っていくと、思った以上に面白く、やりがいのあるものであると分かります。データベースは非常におくの深い分野です。ほんの少しの改良で飛躍的に性能が向上する場合もあります。そして、なによりアプリケーションにとって根幹になる部分ですので非常に重要な役割をもちます。また、周りの人がやりたがらないおかげで、なかなか職場でも優遇されるされることになります。(我が社だけかもしれません。)

そんな中、最近の開発環境では随分とデータベースに関してフォーカスされるようになりました。さまざまな開発環境がバージョンアップするたびにデータベースの機能は強化され、あらゆるコンポーネントやウイザードなるものが提供されていると思います。その中には、「SQLを書かないで済みます!」なんて宣伝文句を付けているものもありますが、実際はそんなものに頼るより、SQLをしっかり書く方がよっぽど簡単です。

SQLはデータベース開発者にとってなくてはならない言語です。開発言語としては、決して素晴らしいものではないのかも知れませんが、データベースを扱う上で必要十分であり、大体のことがしかも簡単に実現することができます。そして、他の言語を学ぶよりもよっぽど短時間でしかもわかりやすく修得することができるでしょう。SQLはプラットフォームによって互換性が無いとよく言われます。しかし、実際にやってみると基本的な考え方は同じで、簡単に変更することができます。そうデメリットになるわけではありません。一通り覚えておきさえすればちゃんと他のプラットフォームでも応用が利くようになります。

しかし、ある日書店に行ってみると、純粋にSQL言語にフォーカスされている本があまりに少ないことに気付きます。あるものといえば完全にプラットフォーム依存の高度な解説書や、なんだかやたら難しく書いているような古臭い参考書ばかり。わかりやすく基礎から解説してあって、現実的な例題やサンプルが豊富にあるようなものがありません。残念でもあり、それならば自分でも書いてみたいという気持ちがムズムズしていたころでもありました。そんな中、非常に幸いであったことにこの本の監修のお話を頂くことになります。私にとってこんなにうれしいことはありません。監修者の権力を活かし、自分の好きなように構成することも許されたのです!?

本書は、「SQL IN 21 DAYS」という本の邦訳書です。原書は21個の章から構成され、それを1日1章のペースで終わらせようという構成になっています。最初はSQLの全くの基礎から始まり最終的には個々のプラットフォームで使用できる高度な技術の解説までされています。本書はその前半の13章を取り出し、再度構成し直したものです。内容は基本的に同じですが、実際はその殆どが大胆に書き直され、日本人にとって読みやすく、また理解しやすくなっていると思います。例題は同じですが、文章自体は殆ど原形をとどめていません。もし、分かりづらい部分がありましたら、私の責任ですので原書をうらむのはやめましょう。
また、本書だけで、SQLの基本の全てが学べるように勤めました。そのため、後半部分の内容でも、SQLを学ぶ上で必要である部分は抽出し、本書には入れ込んであります。そして、原書にあった個々のプラットフォームの依存の部分を極力排除し、なるべく全てのプラットフォームで動作するようにSQLの書き直しも行なっています。(プラットフォームによってまるっきり違う記述になる場合は個別に注意書きが記載してあります。)そのため、もし動作しない場合でも最低限の書き直しで全てのプラットフォームで動作するはずです。

SQLを全く知らない人でも本書の最初から順に読み進めて行けばその殆どの基礎知識が修得することができるでしょう。できれば本書の例題を実際に実行させながら読み進めていってもらうのが理想ですが、読んでいくだけでも確実に力になります。一通り読んで頂いて、データベースの達人になったような気分になって頂いてからでも構いません。後からでも、本書を片手にデータベースで動作させて頂ければ私にとってこんなに幸せなことはないです。

本書を読んで下さった皆様がデータベースを好きになり、この分野で活躍できるようになってくれる事を心より期待します。

 最後になりますが私のに本書を書く機会を与えてくれ、辛抱強く締めきりを延ばして頂いたソフトバンクの伊藤様、また、構成・内容の面で丁寧に書き直していただき更にこの本の向上につとめて頂いた川月様、本当にどうも有り難う御座いました。そしてなにより、私が苦しかった時も心強く支えてくれた原木由布子さんに感謝致します。


<戻る>