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

542

    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. Oletko kertonut jo muille tunteistasi?

      Ystävillesi esimerkiksi? Minä en ole vielä kertonut kenellekään tästä meidän jutusta.
      Ikävä
      77
      4622
    2. Olisin ottanut sinusta akan itselleni

      Mutta olitkin aika itsepäinen ja hankala luonne.
      Ikävä
      180
      1897
    3. Ei sua pysty unohtamaan

      Ei vaan yksinkertaisesti pysty
      Ikävä
      124
      1590
    4. Kerro todelliset motiivit

      kaivattuasi kohtaan?
      Ikävä
      124
      1125
    5. Miten minusta tuntuu että kaikki tietää sun tunteista mua kohtaan

      Paitsi suoraan minä itse, vai mitä hlvettiä täällä tapahtuu ja miksi ihmiset susta kyselee minulta 🤔❤️
      Ikävä
      16
      1061
    6. Hei, huomenta komistus

      Yllättääkö, että olet heti mielessä. Mukavaa päivää upea ❤️
      Ikävä
      35
      1036
    7. Sunnuntain terveiset kaivatulle

      Mitä ajattelet hänestä tänään? Mitä haluaisit sanoa hänelle?
      Ikävä
      78
      933
    8. Miks et tahtonut

      Enää nähdä? Haluaisin ymmärtää
      Ikävä
      52
      896
    9. Hyvää huomenta!

      Mietin miten suhtaudut minuun, jos kerron tunteista. Voinko enää sen jälkeen olla samassa paikassa kanssasi, jos koet as
      Ikävä
      78
      872
    10. Mulla on tarkat korvat

      Kuulin sun äänen ihan selvästi.
      Ikävä
      4
      828
    Aihe