タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

sqlと自己結合に関するtakata3のブックマーク (2)

  • 第10回 結合大全 (5)非等値結合 | gihyo.jp

    非等値結合 自己結合の用途 ところで、この自己結合というのは、いったいどういう局面で使う結合なのでしょう。これも業務によってはあまり利用しない人も多いかもしれません。 実は、自己結合というのは、SQLにおいてはほぼ用途が決まっています。それは、「⁠行間比較」をしたい場合です。行間比較とは、たとえばランキング(順位)算出のように行をまたいで条件を比較するような演算のことです。 自己結合+非等値結合 そして、そうした行間比較を行う場合、自己結合とほとんど常にセットで使われる演算が、非等値結合です。これは文字通り、結合条件に等号以外の<>や<=を使う結合方法で、多くの場合は不等号を使います。 たとえば、図1の部署テーブルに対して「自己結合+非等値結合」を使う例としてリスト6のようなコードが挙げられます。実行結果は図10のようになります。 リスト6 図1の部署テーブルに対して「自己結合+非等値結合

    第10回 結合大全 (5)非等値結合 | gihyo.jp
  • 自己結合の使い方

    はじめに SQLが提供する結合演算には、その特徴に応じて内部結合、外部結合、クロス結合などさまざまな名前が与えられています。普通、これらの結合の多くは、異なるテーブルまたはビューを対象として行われます。しかし、SQLは結合が同一のテーブルまたはビューに適用されることを禁止していません。同一のテーブルを対象に行う結合を「自己結合(self join)」と呼びます。自己結合は、使いこなせば非常に便利な技術ですが、動作がイメージしにくいため敬遠されがちです。そこで稿では、この自己結合の便利さを例題を通して学び、その動作を分かりやすく解説します。 自己結合を理解することは、実務上のテクニックを身につける以外に、もう一つ利点があります。それは、集合指向(set-oriented)というSQLの重要な特徴を理解できることです。オブジェクト指向言語が世界をオブジェクトとして表現するように、SQLは世界

    自己結合の使い方
  • 1