神託
例えば次のような例
tab_name_from_id
| tab_paper_id
|
名前 | 出身 | 新聞 |
---|---|---|
佐藤 | 東京 | 日経 |
山田 | 神奈川 | 日経 |
田中 | 東京 | 朝日 |
佐伯 | 千葉 | 朝日 |
宮元 | 東京 | 読売 |
select a.名前, a.出身, b.新聞 from tab_name_from_id a, tab_paper_id b where a.新聞ID = b.新聞ID(+)と、やるよりも、
select 名前, 出身, decode(新聞ID, '1','朝日', '2','日経', '3','読売',新聞ID) from tab_name_from_idと、したほうが、select * from name_from_paperは、早い。 つまり、viewを作りたいとき、たいして変化がなければ、子マスタを作るより decode文で、対応をつけることを検討してみる価値はある。 で、なんとなく、顧客管理システム開発失敗、東京ガスが損失50億円という記事を見て、ふと思った。 件の会社がOracleを使ってるかどうかはわからない、が、 この手のシステムはつまるところDBをどうやって巧く使うか、という気がするので、 こういうちょっとした小技の積み重ねがあるかないか、の差のような気がする。
追記: どうやら、この東京ガスの顧客管理システムというのはCRMな世界の話らしい。 他社に先駆けてIPセントレックスを運用している会社なのでIP電話で何か凝ったことをやっていたのだろうか?