タグ

SQLとDBに関するshozzyのブックマーク (9)

  • MySQL AB :: Managing Hierarchical Data in MySQL

    "The Documents contained within this site may include statements about Oracle's product development plans. Many factors can materially affect Oracle's product development plans and the nature and timing of future product releases. Accordingly, this Information is provided to you solely for information only, is not a commitment to deliver any material, code, or functionality, and should not be reli

    shozzy
    shozzy 2009/12/15
  • 日常用語でnullを理解する(2) - 極北データモデリング

    SQLにおけるnullは「値があることは分かっているが、それが何なのかはわからない」という意味だ。 「値がない」という意味ではない、ということに注意しなくてはならない。 nullは「値がない」ではない nullを「値がない」という意味だと考えてしまうと、 'a'と'b'とnullを連結した結果が、nullになる 1 + nullがnullになる といったSQLの挙動の意味が理解できなくなる。 nullが「値がない」という意味なら select 'a' || 'b' || null の結果には少なくとも'ab'が含まれているはずあって、「値なし」になってしまうのはおかしい。 また select 1 + null の結果が「値なし」になってしまうのも何だかよくわからない。 つまりSQLは、nullを「値がない」という意味のものとしては扱わない。 が、「値がない(まだない or あり得ない)」と

    日常用語でnullを理解する(2) - 極北データモデリング
    shozzy
    shozzy 2009/08/26
    これは興味深い!こんな見方したことなかったけど、言われてみればそうだねぇ。
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • クラスタリングファクタによってSQLのパフォーマンスが変わる話 - 極北データモデリング

    昨日の実験では、両側にインデックスがある場合、マージ結合とネスト化ループ結合の速さがハッシュ結合と同等かそれ以上になってしまった。 少量のマスタと大量のトランザクションの結合は、ハッシュ結合が圧勝してしかるべきなので何だこりゃと思ったのだが、これはテストデータが都合よく整列しているせいだとわかったので、結合カラムの値を更新して測定し直してみた。 データを作り直す 昨日の時点では、トランザクションデータの作り方に問題があって、結合カラム(tid)が同じ値のレコードが一箇所に固まっていた。 こんな感じ: bench=# select * from history limit 10; tid | bid | aid | delta | mtime | filler -----+-----+--------+-------+----------------------------+--------

    クラスタリングファクタによってSQLのパフォーマンスが変わる話 - 極北データモデリング
    shozzy
    shozzy 2009/01/16
  • リレーショナル・データベースの世界

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

  • DWHではouter join上等 - 極北データモデリング

    今メンテしているDWHでは、トランザクションデータに対してマスタを結合するときに、やたらとleft outer joinが使われている。 outer joinしているということは、結合できるマスタデータがないことを想定しているわけで、そもそもそんなことがあり得ないようにシステムを作らないとまずいんじゃないの、というのが第一印象。 が、DWHのデータは夜中に複数の外部システムから流し込まれたものなので、DWH自身はそれらの整合性を保証することができない。 なので、マスタデータに欠落があったときに、ひっそりとトランザクションの件数が減ってしまうinner joinよりも、データに不整合があっても合計値が維持されるouter joinの方がベターなのだ。 メンテしてみてわかったのだが、DWHというのは集計値の検証が一番大変だ。 結合の失敗でトランザクションがひっそりと欠落したりすると、どの段階で

    DWHではouter join上等 - 極北データモデリング
    shozzy
    shozzy 2007/10/10
    「何でもouter joinにしておくと、腐ったデータから生成したレポートは、見出し行の名称欄が空白になっていたりして、すぐに異常に気付ける。」なるほど
  • 関連項目の多いテーブルはSQL文で処理して欲しい

    Ognacの雑感 木漏れ日々 目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 1487 記事 - 0 コメント - 45674 トラックバック - 143 書庫 2014年5月 (6) 2014年4月 (13) 2014年3月 (14) 2014年2月 (12) 2014年1月 (12) 2013年12月 (13) 2013年11月 (13) 2013年10月 (11) 2013年9月 (13) 2013年8月 (14) 2013年7月 (13) 2013年6月 (14) 2013年5月 (15) 2013年4月 (13) 2013年3月 (14) 2013年2月 (13) 2013年1月 (15) 2012年12月 (14) 2012年11月 (14) 2012年10月 (15) 2012年9月 (14) 2012年8月 (13) 2012年7月 (13)

    shozzy
    shozzy 2007/10/02
  • SQLで木と階層構造のデータを扱う――入れ子集合モデル

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

  • ハッカーの金鉱脈「SQLインジェクション」の正体

    最近,「SQLインジェクション」の危険性について語られる機会が増えているが,SQLインジェクションの正体,その問題点,そしてそれを防ぐための方策について詳しく理解している人はまだ多くない。ここでは,SQLインジェクションとは何かを明確に定義し,どのようにして行われるかを説明し,SQLインジェクションから組織を守る方法を読者に伝えることによって,この状況を改善したい。 SQLインジェクションとは何か SQLインジェクションとは,アプリケーションに含まれるコーディング・エラーが原因となって引き起こされるぜい弱性,または欠陥である。SQLインジェクションは,ユーザーが入力したデータを使ってアプリケーションがSQLステートメントを作成し,それをSQL Serverに送信して実行する場合に発生する。この欠陥が及ぼす影響は,コーディング・エラーの性質によって様々である。 具体的に言うと,その影響は,エ

    ハッカーの金鉱脈「SQLインジェクション」の正体
  • 1