Announcement

Collapse
No announcement yet.

Hilfe bei JOIN-Abfrage

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hilfe bei JOIN-Abfrage

    Hallo, ich habe folgende Tabelle:

    BOOK
    --------------------------------
    name | seller_id | buyer_id
    --------------------------------
    buch1 | 1 | 1
    buch2 | 2 | 2
    buch3 | 3 | null
    buch4 | 4 | 3

    SELLER
    ---------------------
    id | person_id
    ---------------------
    1 | 1
    2 | 2
    3 | 3
    4 | 4

    BUYER
    ---------------------
    id | person_id
    ---------------------
    1 | 5
    2 | 6
    3 | 7

    PERSON
    ---------------------
    person_id | name
    ---------------------
    1 | person1
    2 | person2
    3 | person3
    4 | person4
    5 | person5
    6 | person6
    7 | person7

    Ich möchte folgende Ergebnis mit JOIN (LEFT, RIGHT, usw) bekommen :

    Ergebnis
    ---------------------------------------------------
    Bookname | Sellername | Buyername
    ---------------------------------------------------
    buch1 | person1 | person5
    buch2 | person2 | person6
    buch3 | person3 | null
    buch4 | person4 | person7

    Kann jemand mir verraten, wie die SQL-Anfrage aussehen soll ? Bin noch newbie und so ein kompliziertes JOIN habe ich noch nie gemacht =( Geht es überhaupt mit JOIN ?

  • #2
    Originally posted by arm4n View Post
    Geht es überhaupt mit JOIN ?
    Genau damit...

    Comment


    • #3
      Originally posted by ebis View Post
      Genau damit...
      Aber wie geht es ?

      Comment


      • #4
        so ungefähr
        [HIGHLIGHT="sql"]
        SELECT Book.Bookname
        , ASeller.Name AS Sellename
        , ABuyer.Name AS BuyerName
        FROM Book
        LEFT JOIN Seller ON Seller.ID = Book.Seller_ID
        LEFT JOIN Person AS ASeller ON Person.Person_ID = Seller.Person_ID
        LEFT JOIN Buyer ON Buyer.ID = Book.Buyer_ID
        LEFT JOIN Person AS ABuyer ON Person.Person_ID = Buyer.Person_ID
        [/HIGHLIGHT]

        Comment


        • #5
          Originally posted by ebis View Post
          so ungefähr
          [HIGHLIGHT="sql"]
          SELECT Book.Bookname
          , ASeller.Name AS Sellename
          , ABuyer.Name AS BuyerName
          FROM Book
          LEFT JOIN Seller ON Seller.ID = Book.Seller_ID
          LEFT JOIN Person AS ASeller ON Person.Person_ID = Seller.Person_ID
          LEFT JOIN Buyer ON Buyer.ID = Book.Buyer_ID
          LEFT JOIN Person AS ABuyer ON Person.Person_ID = Buyer.Person_ID
          [/HIGHLIGHT]
          Ok, jetzt verstehe ich mehr. Die Reihenfolge ist also "Book-Seller-Person-Buyer-Person" Ich habe immer gedacht, es geht einfach "Book-Seller-Buyer-Person". Danke vielmals ebis !!

          Comment

          Working...
          X