タグ

TipsとSQLに関するsyqueのブックマーク (3)

  • ストアドプロシージャでシステムを構築するとDBサーバの負荷が増えるか - SQLer 生島勘富 のブログ

    結論から書くとストアドプロシージャでシステムを構築するとDBサーバの負荷は減ります。WEBシステムと仮定してDBサーバとAPサーバの関係で書きますが、C/Sも同じになるので、C/Sで考える人は、APサーバをクライアントと置き換えて読んでください。 その理由は単純 極めて単純な話です。APサーバで処理しても、DBサーバで処理しても結果は同じになります。 つまり、システム全体で最低限行わなければならない処理量は同じなわけです。APサーバで処理してDBサーバの処理が減るならば、APサーバがDBサーバの処理を肩代わりしなければいけません。 APサーバが肩代わりできる処理 ・四則演算 ・ソート処理 ・マスタ類のキャッシュ(すればの話) APサーバが肩代わりさせるために増える処理 ・SQL文を大量に受け取るネットワークのコスト(AP/DB双方) ・SQL文を実行するためのオーバーヘッドの繰り返し ・A

    ストアドプロシージャでシステムを構築するとDBサーバの負荷が増えるか - SQLer 生島勘富 のブログ
    syque
    syque 2011/06/22
    APサーバが肩代わりできる処理      ・四則演算      ・ソート処理      ・マスタ類のキャッシュ(すればの話)  APサーバが肩代わりさせるために増える処理      ・SQL文を大量に受け取るネットワ
  • リレーショナル・データベースの世界

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    syque
    syque 2011/06/22
    以下の条件に当てはまる人を読者に想定しています。 なぜ"関係"モデルという抽象的な用語を使うのか分からない。"表"モデルでいいじゃない。 なぜ「= NULL」ではなく「IS NULL」と書かねばならないのか分からない。 E.F.Codd
  • SQLのORDER BYにCASE式が使えてちょっと嬉しかったお話 - aike’s blog

    SQLで検索結果をソートするときってorder by使うよね。でもさ、単純に大きい順とか五十音順とかじゃなくて、ひと工夫したいときってあるじゃないですか。 たとえば、国名のリストをアルファベット順でソートして一覧表示するけど、利便性を考えて日は一番上に表示したい、とかね。 で、まあ、そういうときは表示順のソートキーを別項目として持ったりするのがいいんだろうなって思ってたんだけど、最近シンプルな解決策を教わりました。 select country_name from t_country order by case country_name when 'Japan' then 1 else 2 end, country_name ソートの第1条件として'Japan'かどうかを判断して、第2条件として国名を見る、という方法。 やー、SQLは奥が深いな。

    SQLのORDER BYにCASE式が使えてちょっと嬉しかったお話 - aike’s blog
    syque
    syque 2011/02/14
    ORDER BY で CASE が使える。うっひょお便利。
  • 1