タグ

ブックマーク / tgk.hatenadiary.org (7)

  • 「NULLがUNIQUE制約に縛られないことを利用する」のは、正当なNULLの使い方 - 極北データモデリング

    リンク先は「UNIQUE INDEXを振った列に複数のNULLを投入できること利用して、ユニークであるべきユーザIDの使い回し(=退会したユーザのIDを新規ユーザに開放する)を実現する」という話。 アクティブなユーザ名はユニークにしたいけど削除されたユーザの情報は残したい。でも削除済みユーザテーブルは作りたくない とかいうワガママを発揮したい時にdeleteフラグに使えないかなーなんてだめですかそうですか。なんか他にまともな方法無いですか…。 MySQLのこういうのっていかがなもんか - 桝原翔市的博客 いやーこれはまともな方法じゃないでしょうか。 「NULLはNULLに一致しない」のが絶対の原則なのだから、NULLを使ってUNIQUE制約を回避するのは裏技でもwork-aroundでもない、正当なテクニックでしょう。 私はTM派なので実表上にnullを発生させる設計はしないが、Nulla

    「NULLがUNIQUE制約に縛られないことを利用する」のは、正当なNULLの使い方 - 極北データモデリング
    honeybe
    honeybe 2013/03/06
  • SQLアンチパターン「IDリクワイアド」の再検討 - 極北データモデリング

    SQLアンチパターン 作者: Bill Karwin,和田卓人,和田省二,児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型購入: 9人 クリック: 698回この商品を含むブログ (46件) を見る話題のSQLアンチパターンの目次に「アンチパターン:すべてのテーブルにID列を用いる」とあるのを見て、大胆にもサロゲートキーを否定しているのかと思って読んでみたが、どうも主張がはっきりしない。論点が尽くされていないような... 「SQLアンチパターン」の主張 第3章には以下のようなことが書いてある。 「IDリクワイアド」アンチパターン IDリクワイアドは「すべてのテーブルに"id"という列名の無意味な連番の列を追加し、PRIMARY KEY制約を付与する」というパターンのこと。 何がいけないのか 自然キーにUNIQUE制約を付けないなら、自然キーの重複を

    SQLアンチパターン「IDリクワイアド」の再検討 - 極北データモデリング
    honeybe
    honeybe 2013/03/06
  • 見積りが「高い」といわれたらこう返そう - 極北データモデリング

    ハリー・ベックウィス「逆転のサービス発想法―見えない商品を売るマーケティング」に書いてあった話。 カフェでピカソを見つけた婦人が、私をスケッチしてくださる?と頼んでみた。 ピカソは快諾し、サラサラと絵を描き上げた。婦人はピカソに、いくらで絵を譲ってくれるか聞いた。 5000フラン、とピカソは答えた。「5000フラン! ...たった3分かかっただけで?」という婦人に向かって、 「いいえ」ピカソは言った。「私はここまで来るのに一生を費やしたのです」 これはいい。 今度「高い」て言われたらこれ使おう。

    見積りが「高い」といわれたらこう返そう - 極北データモデリング
    honeybe
    honeybe 2012/12/27
  • 問題点には直接触らないほうが解決しやすい話 - 極北データモデリング

    嫁にちょっとした持病があって毎日薬飲んでたんだけど、もう薬飲みたくないって言うんでいろいろ調べたら福岡に凄腕の鍼の先生がいて2泊3日でたいていの病気が治るらしいのでうわーこの人にしようってことになり、先日嫁が一人で行って帰ってきたらえらいことになった。 まずウエストと脚がものすごく細くなって、行くときはタイトだったジーンズがガバガバになって裾踏んで歩いている。 あと肌が白くなって、硬かった足の裏の皮膚が柔らかくなり、目の下とかもピンと張って綺麗になっている。 なぜ3日で痩せて肌が白くなるのか 病気治すって言うから3日で15万でも払おうって話だったのに無駄に綺麗になって帰ってきたからアンタ何やってるのとか言ってたんだけど、次の日嫁を見たらのど仏が引っ込んで喉がまっすぐになっていた。甲状腺がわるいとのど仏が目立ってくるんだけど、鍼うって3日でもう引っ込んでるからすっげー!次の検査楽しみだなあ!

    問題点には直接触らないほうが解決しやすい話 - 極北データモデリング
    honeybe
    honeybe 2009/10/22
  • フェルミ推定で測定できるものは論理思考力ではなくててんぱっている度合 - 極北データモデリング

    フェルミ推定ていうのがありますでしょう。採用面接で「都内に携帯基地局はいくつあるか?」みたいなことを聞くあれ。 これは応募者の論理思考力を見るもので、例えば「貴方が地元の選挙に立候補したら何票入るか?」という問いであれば「選挙権人口がxx人で無党派層がxx%居るから...」とトップダウンで答えを囲い込んでいくのが優秀な人で、「俺に投票しそうのは両親と、友達10人と、高校の先生が...」などとボトムアップするのがいまひとつな人、「だいたい1000票ぐらいじゃないすか?」というのが全くダメな人、ということになっているらしい。 先週までやっていた新卒採用の二次面接で、サーチエンジンを使いつつフェルミ推定的な問いを解かせる、という課題を出してみた。 実際にやってみるとおかしな推論をする人が続出して「面接では明らかにならない資質が見える!すごい!」と思ったのだが、明らかに頭のいい人がまるで非論理的な

    フェルミ推定で測定できるものは論理思考力ではなくててんぱっている度合 - 極北データモデリング
    honeybe
    honeybe 2009/02/09
  • select * は禁じ手で、必ず列名を列挙すべしとされている理由 - 極北データモデリング

    select * from ... と書いてはダメ、たとえ全列取得する場合でも select a, b, c, d from ... と書くのが常識、という話をずいぶん前に聞いたことがあって、意味がわからないので人力検索に投げてみた。 いただいた回答を整理しておく。 テーブル内の一部の列を参照したい場合 例えばクライアント側では1列しか見ないのにワイルドカードで全列取得することには、パフォーマンス上の問題がある。 select * from ... でも select a from ... でもディスクI/Oのコストは基的に変わらないが*1、それ以外のところに問題がある。 ネットワークの問題。DBサーバからクライアントに転送するデータが無駄に大きくなる メモリの問題。DBMSのデータキャッシュやOSのファイルキャッシュが無駄遣いされる テーブルの全ての列を参照したい場合 全列取得したい場

    select * は禁じ手で、必ず列名を列挙すべしとされている理由 - 極北データモデリング
    honeybe
    honeybe 2009/01/10
  • なぜ勉強しなくてはならないか - 極北データモデリング

    タイの坊さんが書いたに、人間がなんで勉強しなくてはならないのか説明しているところがあって、個人的にはベストアンサーだと思っている。 テーラワーダ仏教の実践―ブッダの教える自己開発 作者: ポー・オー・パユットー,P.O.Payutto,野中耕一出版社/メーカー: サンガ発売日: 2007/09/01メディア: 単行購入: 7人 クリック: 53回この商品を含むブログ (12件) を見る P-92 何が何であるかを知ると、彼は「ああ、このことはあるべき当然の状態なのだろうか」 と分析し始めます。 ... 知識が分析をすれば、新しい種類の欲求が生まれるのです。それがあるべき当然の状態に したいということです。簡潔に言えば、それをよくしたいということです。 ... もし、私たちが欲求を開発できなければ、私たちの楽は感受に限定されます。 すなわち、好きなことを求め、嫌いなことを求めず、渇愛*1

    なぜ勉強しなくてはならないか - 極北データモデリング
  • 1