- m_s_modified
- 1384
- 0
- 0
- 0
私も標準化したくて書いてます。インデントはSQLFixなどのは標準的だと思いますが、SQLServerのビルダーのはかなり嫌ですね。最近は AND , を前が主流です。JOINを後ろに書く人が多いのですが、私はJOINをメインにチェックしますので……。QT @wata_i
2010-03-18 20:55:23オラクルさんにもいろんな人がいるのですね~。 QT @fgtrjhyu:1対1以外のEXISTS使うと内部的に直積作るから駄目って言ったオラクルのコンサル思い出した。どんだけ馬鹿ですかOracle.
2010-03-18 20:56:42SQLは1行で書けるので LEFT JOIN は「左に置いたモノをメインと見ます」の意味。もちろん、一行で書くととても読めないので、左、または、上になります。
2010-03-18 20:57:28大量にSQLを読むとき、左右がごっちゃになっていると大変読みにくい。http://codepad.org/aYJimXh4 http://codepad.org/3Tubw9P4 のように左(上)にあるものが左辺、右(下)になるモノを右辺にするように書くこと。
2010-03-18 20:59:13左右逆で良く書けるなと感心することがある(苦笑)もちろん、左右を逆にしても結果は同じになるけれど、間違いを見つけにくい(本来的には間違い)。 ちなみに、Oracle 9.1.4以前は左右を合わせないとLEFT JOINではちゃんと返ってこなかった記憶がある。
2010-03-18 21:00:34内部結合の意味。ベン図 http://bit.ly/DgC2a で2つの○が重なる内側を取ってくるイメージですかね。左外部は左の○が全部で右は欠けるイメージです。 QT @kana_o @Sikushima inner joinはなぜinnerなのでしょう?
2010-03-18 21:05:31LEFT JOIN のライン違いの例 http://codepad.org/9e5Fdyhz
2010-03-18 21:10:04FROM句、WHERE句までを会話のペースでできるようになればSQLは本当に楽になる。基本、名称取りのロジックに関係ないマスターを無視して考えれば良い。後はNOT NULLを意識してLEFT JOINか判断すればいい。
2010-03-18 21:17:56クエリービルダーはイメージを掴むまでは、非常に良いと思います。クエリービルダー → 手書き → クエリービルダーのイメージかな。カラム数が多いのに、無理して手書きする必要も、また、ないのです。
2010-03-18 21:19:31テーブル設計を含むアジャイルは、余程単純なテーブル設計ですむ場合を除き、不可能です。テーブル設計を行うためには、UI他の要件が必要です。ですから、アジャイル開発はテーブル(設計)と完全な疎結合にしなければなりません。
2010-03-19 12:51:55