月別アーカイブ: 2013年5月

OSSDB講座第二,三回(全八回)@LA池袋校

IMG_6204

毎週土曜に受講しているPostgreSQLの講座。
時間帯はおおよそ10:00-16:00くらいの時間(昼休み50分)

覚えたことを覚えたなりにアウトプットしないと忘れるので覚え書き。

二回、三回ので扱った内容は表の照会。
基本的に表の照会は以下のようなSQL文を打つことになる。

SELECT 照会したい列 FROM 表の名前; となるので以下のような感じ。
SELECT * FROM customer;
customerテーブル(顧客表)の情報をあるだけそのまま出してねという意味になる。

けれど顧客表の中の情報で、名前と電話番号だけ知りたい!とか
東京に住んでて名字がサイトウさんの人の情報だけ出してほしい!とか
売上データで売り上げランキング1位から10位の商品名だけ表示してほしい!とか
さまざまな条件で検索したいときは、それらしいSQL文を書かないといけない。

そういうときはおおまかにこんな感じ。SQL「文」と言われるだけあって文章っぽい。
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+–+-+-+-+-+-+-+-+-+-+-+-
SELECT emp_name , birthday FROM employee WHERE birthday >= ’1980-01-01′ ORDER BY birthday DESC;
担当者表(employee)から、1980年以降生まれの社員の名前と誕生日を降順で表示してね。

表を照会したい    SELECT   (列の名前)
どの表から      FROM    (表の名前)
その行を       WHERE    (行の選択条件)
どの順番で      ORDER BY  (昇順か降順か)

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+–+-+-+-+-+-+-+-+-+-+-+-
表を照会するってだけだけど、より細かい条件の指定もできる。
そういう時は以下のように文節を設けていくことになる。

表を照会したい    SELECT
どの表から      FROM
その行を       WHERE
集計する時の列の指定 GROUP BY
GROUPBYでの選択条件 HAVING
どの順番で      ORDER BY
表示行数の指定    LIMIT
スキップする行の指定 OFFSET

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+–+-+-+-+-+-+-+-+-+-+-+-
さも長ったらしいことを丁寧に説明するときのように、
SQLの文法でも文節と条件を正しく指定して書く必要がある。
SQL文はプログラミングでも英語に近い感覚で捉えられるので、
細かいのは面倒でも法則に慣れればそんなに習得は難しくないんじゃないか、なんて。

二回に分けて、WHERE句の使用方法、GRUOP BYの使い方、
列関数の使用方法、表の結合方法あたりを学んだと思うけど今回は大枠だけ書き置き。

VMware player でのCentOS5.8 漢字文字化け対応

開発環境の話になると必ず出てくるのでLinuxの勉強を再開することに。
改めてVMware playerさんにご起動いただく。
今回はCentOS5.8を入れました。

どうやら簡易インストールのデフォルト設定では英語になるらしいので
System → Administration → Language で日本語を選択した。
選択画面で「Japanese -□□」と文字化けっぽいのが出てたのでいやな予感はしたけど
再起動したらこんな感じに。□□して□□するとか伏字になっててヒドイ。

centos0

仕方がないので色々調べて以下の操作を実行
・アプリケーション → アクセサリ → GNOME端末
・su コマンドを打ってPW入力し管理者権限に変更
・yum install fonts-japanese コマンドで日本語フォントのインストール
・fc-cache -fv コマンドでキャッシュのクリア
・yum install scim-anthy コマンドで日本語入力環境のインストール

centos

そして再起動。

centos3

centos5

とりあえずGUI環境が整ってほっとしました。またいろいろ見てみます。

今回参考にしたサイト
VMWare Player + CentOS 5.5 覚書 :: 文字化け解消手順とか
VMwareのCentOS5.5 設定 #1 日本語文字表示手順