SQL kysely

apuja tarvitaan

Kolme taulukkoa:

värit (id, nimi)
1, musta
2, valkoinen
3, punainen

henkilöt (id, nimi, lempiväri_id)
1, Matti, 1
2, Jussi, 1
3, Liisa, 2
4, Katri, 3

kaverit (id, poika_id, tyttö_id)
1, 2, 4
2, 1, 3

Pitäisi saada ulos data:

Poikanimi, PoikaLempiväri, Tyttö, TyttöLempiväri.

Miten Tämä onnistuu?

5

504

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • en saa toimimaan

      En saa millään toimimaan, help !!!

      • apua

        select
        h1.nimi,
        v1.nimi,
        h2.nimi,
        v2.nimi
        from
        henkilot h1,
        henkilot h2,
        varit v1,
        varit v2,
        kaverit k
        where
        k.poika_id = h1.id and
        h1.lempivari_id = v1.id and
        k.tytto_id = h2.id and
        h2.lempivari_id = v2.id;


      • myös...
        apua kirjoitti:

        select
        h1.nimi,
        v1.nimi,
        h2.nimi,
        v2.nimi
        from
        henkilot h1,
        henkilot h2,
        varit v1,
        varit v2,
        kaverit k
        where
        k.poika_id = h1.id and
        h1.lempivari_id = v1.id and
        k.tytto_id = h2.id and
        h2.lempivari_id = v2.id;

        Hakeeko se myös sellaiset nimet joilla lempiväri_id on NULL tai 0


      • apua
        myös... kirjoitti:

        Hakeeko se myös sellaiset nimet joilla lempiväri_id on NULL tai 0

        hae. Tässä oletin, että lempiväri on olemassa.


      • käytettävä...
        apua kirjoitti:

        hae. Tässä oletin, että lempiväri on olemassa.

        ...outer joineja.
        Yleensäkin kannattaa taulujen välisissä relaatioissa käyttää where lauseen sijasta INNER ja OUTER JOINEJA.

        Esim. SELECT xx FROM table1 LEFT OUTER JOIN table2 ON table1.nimi=table2.nimi

        ->tämä palauttaa kaikki table1:stä vaikka kyseistä arvoa ei olisikaan table2:ssa.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tällä kertaa Marinia kadehtii Minäminä Päivärinta

      Kokoomuksen tyhjäntoimittelija itkeä tuhertaa, kun kansainvälinen superstaramme ei leiki hänen kanssaan. Oikean puoluee
      Maailman menoa
      413
      1716
    2. Minua itkettää tämä tilanne

      Meidän pitäisi jutella. Eikö niin? Miehelle.
      Ikävä
      105
      1348
    3. Miksi jollain jää "talvi päälle"

      Huvittaa kastoa ullkona jotain vahempaa äijää joka pukeutuu edelleen kun olisi +5 astetta lämmittä vaikka on helle keli
      Maailman menoa
      172
      1334
    4. Miksi koulut pakottavat

      Lapset uimaan sekaryhmänä? Murrosikäiset tunnetusti häpeilevät vartalossa tapahtuvia muutoksia. Tulee turhia poissaoloja
      Maailman menoa
      117
      1285
    5. Mitkä oli suurimmat

      Syyt mihin hänessä ihastuit alussa ja pikkuhiljaa tunteiden edetessä
      Ikävä
      45
      1026
    6. Minulla oli tunteita

      Tein itsestäni pellen. Sait hyvät naurut ja minä 💔
      Ikävä
      63
      936
    7. Suomen Pallolitto: Tasoryhmät lasten jalkapallossa - Erätauko-tilaisuus ma 20.5.2024

      Tasoryhmät lasten ja nuorten jalkapallossa herättävät paljon keskustelua. Mitä tasoryhmät ovat ja mikä on niiden tarkoit
      Suomi24 Blogi ★
      0
      890
    8. Susanne Päivärinta kirjassaan: Sannalla nousi valta päähän, Big Time!

      Päivärinta toteaa ettei ole nähnyt kenenkään muuttuvan niin totaalisesti kuin Marinin, eikä siis todellakaan parempaan s
      Maailman menoa
      92
      881
    9. Se katse silloin

      Oli hetki, jolloin katseemme kohtasivat. Oli talvi vielä. Kerta toisensa jälkeen palaan tuohon jaettuun katseeseen. Tunt
      Ikävä
      32
      866
    10. Mitä et hyväksy miehessä/naisessa josta olet kiinnostunut?

      Itse en halua, että miehellä olisi lapsia!
      Ikävä
      110
      834
    Aihe