blog.keychi.net http://blog.keychi.net Sat, 23 May 2009 01:30:20 +0000 http://backend.userland.com/rss092 ja SQL入門(6)<グルーピング結果に対して絞り込み条件を付与する> 元からある列の値をもとに絞り込みを行う場合は、WHERE句を使う グルーピングした結果値に対して絞り込み条件を付与する場合、HAVING句を使う 以下、TECHSCOREの記事より引用 /* グループ化 */ SELECT 顧客コード , 商品コード , MAX(受注個数) FROM 受注表 GROUP BY 顧客コード , 商品コード HAVING MAX(受注個数) >=20; /* 実行結果 */ 顧客コード 商品コード MAX(受注個数) ───── ───── ────── 001 ... http://blog.keychi.net/2009/05/18/sql_6/ SQL入門(5)<データのグループ化> 特定のカテゴリ単位でデータを集計するときには GROUP BY を使う。 /* グループ化 */ SELECT 顧客コード , MAX(受注個数) FROM 受注表 GROUP BY 顧客コード ; /* 実行結果 */ 顧客コード MAX(受注個数) ───── ────── 001 30 002 20 003 ... http://blog.keychi.net/2009/05/14/sql_5/ 「サーバント」―つまり「奉仕」こそがリーダーシップの本質 「リーダーシップ」と「サーバント(奉仕)」という、一見すると矛盾しそうな2つの概念の組み合わせ。 サーバントリーダーシップによると、これこそがリーダーシップの本質なのだという。 リーダーシップというと、不確実な未来をだれよりも早く見通し、分かりやすい道を他人に示すというイメージがあるが、 そのような先見性、深い洞察力とコミュニケーション力を持つだけでは、不十分であるというのが著者の説。 では、サーバントとしての性質を身につけるにはどうすればよいか? その答えのヒントになりそうな文章があったので引用しておく。 そもそもサーバントである人は、他人にとって優先順位の高いものがその人に与えられているかどうかを気づかう この言葉は「ピラミッドを逆さまにせよ」とか、「縁の下の力持ち」とかいうありきたりで抽象的な言葉に比べて、 リーダーシップを身につけるための思考特性について具体的に書かれていて分かりやすい。 そして、実際にサーバントリーダーシップが発揮されているかどうかを判断するための質問が以下。 「奉仕されている人々は、人間として成長しているか」 「奉仕されることで、彼らはより健康になり、より賢くて自由で、 自立した存在となって、自分自身もサーバントに近い存在になっているだろうか」 そして、「社会の中で最も権力のない人々に与える影響はどのようになっているのか」 「彼らは恩恵を受けているか。少なくとも、これ以上何かを奪われるような目に遭わないだろうか」 「奉仕されている人々」というのがイメージしにくれれば、この部分を「組織で働く人々は」と読み替えてもいいかもしれない。 この質問を常日頃から、自分自身に投げかけることにしたいと思う。 http://blog.keychi.net/2009/05/12/servant/ SQL入門(4)<条件によって抽出される値を切り替える> CASE式のススメ(前編)より引用 --単純CASE式 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE 'その他' END --検索CASE式 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE 'その他' END CASE式のススメ(前編) http://codezine.jp/article/detail/404 http://blog.keychi.net/2009/04/28/sql_4/ SQL入門(3)<重複した行の排除とあいまい検索> 重複した行をあらかじめ取り除く SELECT DISTINCT フィールド名 FROM テーブル名; あいまいな条件での検索 SELECT フィールド名 FROM テーブル名 WHERE フィールド名 LIKE '文字列パターン'; 前方一致検索の場合の文字列パターン 文字列% 後方一致検索の場合の文字列パターン %文字列 中間一致検索の場合の文字列パターン %文字列% 任意の1文字を表す場合(「_」は任意の1文字を表す) _文字列 例文 SELECT title publish FROM books WHERE title like '%SQL%' ; http://blog.keychi.net/2009/04/27/sql_3/ SQL入門(2)<データベースとテーブルの作成> MySQLでデータベースを作成する方法 データベースの作成 CREATE DATABASE データベース名; データベースの表示 SHOW DATABASES; データベースの削除 DROP DATABASE データベース名; データベースの選択(データベースを選択して使用できる状態にする) USE データベース名; MySQLでテーブルを作成する方法 テーブルの作成 CREATE TABLE テーブル名 ( フィールド名1 データ型1, フィールド名2 データ型2, フィールド名3 データ型3, ); 作成したテーブルの確認 SHOW TABLES FROM データベース名; 作成したテーブルのフィールドを確認 SHOW FIELDS FROM テーブル名; テーブルの削除 DROP TABLE テーブル名; 参考書籍:これならわかるSQL 入門の入門 http://blog.keychi.net/2009/04/22/sql_2/ SQL入門(1)<正規化> 正規化とは 関連するデータ項目ごとにテーブルとして独立させる作業のこと。 正規化をすることによって、複数の同じ項目を同時に修正する手間を省くことができる。 ・第1正規化 各フィールドに1つしかデータがない状態にすること ・第2正規化 ユニークキーによってテーブルを分割すること ある項目が決まれば自動的に他の項目も決まるのであれば、 同一のテーブルで管理しない方が効率的。 ・第3正規化 第2正規化したテーブルをさらに分割。 1つの項目の値が決まると別の項目の値も推測できる組み合わせを別のテーブルに分割すること。 参考リンク: http://ja.wikipedia.org/wiki/%E3%83%AA%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E6%AD%A3%E8%A6%8F%E5%8C%96 http://www.st.rim.or.jp/~ryoma/tips/seikika.htm 参考書籍: これならわかるSQL 入門の入門 http://blog.keychi.net/2009/04/22/sql_1/ 目的を達成するために使った手段は、目的とおなじくらい重要である これは、サーバントリーダーシップの前書き部分に書いてあった言葉。 大義名分さえあれば、何をしても良いとか、目的が手段を正当化してくれるとかいうのは間違っていて、 目的と同様に手段も良心にかなったものでなくてはならない。 仮に卑劣な手段、非道徳的なやり方で目的を達成しても、それは長続きしない、 ということらしい。 カントの有名な言葉に 人間を単なる手段として扱ってはならず、目的自体として扱わなければならない という言葉がある。 カントによれば、人格を有する存在は、他のものと引き換えがきかない価値(尊厳) を持つ。つまり、人間(やその他の理性的存在者)は、かけがえのない尊さを持つ。それに対して、人格以外の物は、単なる交換価値を持つだけで、いつでも他のものと交換することができる。つまり、置き換えがきく。したがって、たとえばナチスの人体実験のように、目的を達成するための手段としてのみユダヤ人を用いることは、人格が持つ尊厳を踏みにじる行為だと考えられる。 では、どのようにして人を扱えばいいのかというと、人は理性を持ち、自分の人生を決める能力を持っているのだから、その人の自律を尊重することによって、相手の人格が持つ尊厳を尊重したことになるとされる。つまり、スーパーにお使いに行ってもらうときなど、他人を手段として扱う場合は、当人の同意がなければ、奴隷と同じ扱いになってしまうが、当人の心からの同意があれば、「手段としてのみではなく、目的自体として」扱っていることになる。 手段と目的 人間を道具や奴隷のように扱ってはならない、というと当たり前のことではあるけれども、 特に仕事や子育ての面では、達成したい目的だけにとらわれると、人間に対する接し方を間違ってしまうので気をつけたい。 http://blog.keychi.net/2009/04/18/means/ 約1ヶ月ぶりにブログ再開 レンタルサーバーの障害でデータが消えて以来、しばらくそのままにしていましたが、どうやらデータの復旧ができないようなので改めてゼロからスタートすることにしました。 格安の某レンタルサーバーを使っていて、今回の件で学んだ教訓 とにかく障害が多い。 サポート体制がしっかりしていない。(質問しても回答はすべてテンプレートなので答えにならない) バックアップをまめにとること。(今回の場合、サーバーのRAIDも壊れていたらしい) かなりひどい障害だったようで、この会社の掲示板には怒りの書き込みが多かったのですが、安さの秘密はこういうところにあるのか、と逆に納得してしまいました(問い合わせに対する返信のテンプレぶりに脱帽)。手にとって見ることができる商品に比べて、こういうサービスは目に見えないので、知識や経験がないと良し悪しの判断がつきにくいのではないでしょうか。 いままではすべてのできごとが「目に見える世界」のことだったけれども、これからは「目に見えない世界」の住人として生きていく知恵を身につけなければ生き残れない。いかにして新大陸(目に見えない大陸)での生活様式を身につけるか、ということで大前研一氏の「Invisible Continent」という言葉を思い出しました。 参考書籍:大前研一「新・資本論」―見えない経済大陸へ挑む http://blog.keychi.net/2009/04/17/restart/