Kysymys taulukoiden yhdistämisestä

Mikes

Elikkä kysymys koskee kahden eri mittaisen taulukon liittämisestä. Toisessa talulukossa on kolme riviä ja 2 saraketta (;=solujen väli) esim:
1;2
2;34
3;44

Toisessa taas kaksi riviä ja saraketta esim:
1;33
3;23

Miten saan nuo liitettyä niin että lopputulos on "automaattisesti" seuraavanlainen:
1;2;1;33
2;34;;
3;44;3;23

Elikkä niin että jälkimmäisestä taulukosta rivit menevät oikeille paikoilleen ekaan taulukkoon. Elikkä taulukkojen 1. sarakkeiden numerot "löytävät toisensa".

Yllä hyvin yksinkertaistettu taulukko, mutta jos rivejä on tuhansia on manuaalinen liittäminen hankalaa.

Varmaan ihan simppeli homma mutta vasta-alkajana en keksi miten moinen toteutetaan.

Kiitos!

5

1406

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Magi_Suuri

      Jos tekstitiedostojen kanssa pelaat, Linuxissa/Unixissa tuo menisi seuraavalla komennolla:

      $ join f1.txt f2.txt -t ';' -a 1
      1;2;33
      2;34
      3;44;23

      jos yhdistettävät tiedot ovat tiedostoissa f1.txt ja f2.txt. Erotinmerkki asetetaan -t:llä. Muuten tehdään tavallinen join, mutta -a-parametrilla vastaamattomat rivit otetaan ensimmäisestä tiedostosta.

      • Mikes

        Kiitos vastauksesta!

        Elikkä käyttis on XP ja tiedosto on excel/Open office taulukko. Siis Open Office taulukkolaskennassa näitä yritin yhdistellä. Tosin nuo tiedostot on kyllä myös tekstitiedostoina joten voi ne liittää ennen taulukkona avaamistakin. Ajattelin jos ne saisi avattua samaan Open office taulukkoon (siis ensin toinen auki ja lisätään tähän toinen copy pastella) ja taulukkolaskenta osaisi jollain komennolla järjestää rivit oikein.

        Kiitos!


      • Magi_Suuri
        Mikes kirjoitti:

        Kiitos vastauksesta!

        Elikkä käyttis on XP ja tiedosto on excel/Open office taulukko. Siis Open Office taulukkolaskennassa näitä yritin yhdistellä. Tosin nuo tiedostot on kyllä myös tekstitiedostoina joten voi ne liittää ennen taulukkona avaamistakin. Ajattelin jos ne saisi avattua samaan Open office taulukkoon (siis ensin toinen auki ja lisätään tähän toinen copy pastella) ja taulukkolaskenta osaisi jollain komennolla järjestää rivit oikein.

        Kiitos!

        Ok, luulin että tiedot olivat tekstitiedostossa, kun esitit ne tuolla puolipistemerkinnällä.

        No se mitä ylläoleva teki oli kahden tietokantataulun join-operaation. En tiedä saako moista tehtyä Calcissa helposti, taitaa Basella olla helpointa.

        Koska haluat myös toisen taulun rivin vaikka vastinetta ei löytyisikään toisesta, olisi kyseessä "FULL OUTER JOIN"-kysely. OpenOffice ei käsittääkseni tue tätä kyselyä kevyessä XML-pohjaisessa tietokantamuodossa (joillain muilla muodoilla se toimii), mutta jos toispuoleinen ratkaisu riittää niin LEFT OUTER JOIN ja RIGHT OUTER JOIN toimivat.

        Eli tehdään kaksi taulua Taulu1 ja Taulu2, joissa on "id" pääavaimena. Tehdään seuraavanlainen SQL-kysely:

        SELECT * FROM { OJ "Taulu1" LEFT OUTER JOIN "Taulu2" ON "Taulu1"."id" = "Taulu2"."id" }

        tai hieman siistimmin:

        SELECT "Taulu1"."id", "Taulu1"."arvo", "Taulu2"."arvo" FROM { OJ "Taulu1" LEFT OUTER JOIN "Taulu2" ON "Taulu1"."id" = "Taulu2"."id" }


      • Mikes
        Magi_Suuri kirjoitti:

        Ok, luulin että tiedot olivat tekstitiedostossa, kun esitit ne tuolla puolipistemerkinnällä.

        No se mitä ylläoleva teki oli kahden tietokantataulun join-operaation. En tiedä saako moista tehtyä Calcissa helposti, taitaa Basella olla helpointa.

        Koska haluat myös toisen taulun rivin vaikka vastinetta ei löytyisikään toisesta, olisi kyseessä "FULL OUTER JOIN"-kysely. OpenOffice ei käsittääkseni tue tätä kyselyä kevyessä XML-pohjaisessa tietokantamuodossa (joillain muilla muodoilla se toimii), mutta jos toispuoleinen ratkaisu riittää niin LEFT OUTER JOIN ja RIGHT OUTER JOIN toimivat.

        Eli tehdään kaksi taulua Taulu1 ja Taulu2, joissa on "id" pääavaimena. Tehdään seuraavanlainen SQL-kysely:

        SELECT * FROM { OJ "Taulu1" LEFT OUTER JOIN "Taulu2" ON "Taulu1"."id" = "Taulu2"."id" }

        tai hieman siistimmin:

        SELECT "Taulu1"."id", "Taulu1"."arvo", "Taulu2"."arvo" FROM { OJ "Taulu1" LEFT OUTER JOIN "Taulu2" ON "Taulu1"."id" = "Taulu2"."id" }

        Kiitos vastauksesta. En tosin tiedä edes mikä base on joten pitää keksiä toinen keino. Eiköhän se tuosta lutviinnu.


      • Magi_Suuri
        Mikes kirjoitti:

        Kiitos vastauksesta. En tosin tiedä edes mikä base on joten pitää keksiä toinen keino. Eiköhän se tuosta lutviinnu.

        OpenOfficen tietokantaohjelma. Mutta jos et tiedä mikä se on, voi tuon tekeminen sillä olla turhan työlästä, vaikkakin ehkä opettavaista.

        Calcilla tuon saa tehtyä käyttämällä Calcin VLOOKUP-funktiota hakemaan tiedon kakkostaulukosta ykköstaulukon tunnistenumeron perusteella. Tällä saa haettua vastineet vain toisen taulukon perusteella, eli jos haluaa molempiin suuntiin, pitää tehdä sama juttu molemmille taulukoille. Sitten kopioidaan tulokset peräkkäin, järjestetään ja suodatetaan duplikaatit pois. Tässä on jonkin verran käsityötä, mutta onnistuu kyllä.


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

    Luetuimmat keskustelut

    1. Hoitajalakko peruuntuu, tilalle joukkoirtisanoutumiset

      "Tehyn ja Superin hallitukset kokoontuivat tänään toteamaan, että tilanne edellyttää järeämpiä työtaistelutoimia." https://www.hs.fi/politiikka/art-2
      Maailman menoa
      739
      9126
    2. Johan tuli oikea aivopieru Britti Lordilta

      Emeritusprofessori Lordi Robert Skidelsky sanoi Suomen rikkovan YYA sopimusta joka on tehty Neuvostoliiton kanssaa 1948. Mitä pir
      Maailman menoa
      373
      7846
    3. Tehyn Rytkösellä tallessa tekstiviestit A-studiokohussa

      https://www.mtvuutiset.fi/artikkeli/a-studiosta-kohu-tehyn-rytkosen-mukaan-ministeri-linden-sai-paattaa-osallistujat-ohjelma-kiistaa-vaitteen/8407068
      Maailman menoa
      160
      5503
    4. William ja Sonja Aiello ERO

      Hyvä Sonja! Nyt etsit uudet kaverit ja jätät nuo huume- ja rahanpesu porukat haisemaan taaksesi!
      Kotimaiset julkkisjuorut
      54
      2316
    5. Oho! Seurapiirikaunotar, ex-missi Sabina Särkkä yllättää tällä harvinaisella kyvyllä: "Mulla on..."

      Sabina Särkkä on nähty monissa tv-reality-sarjoissa. Mutta tiesitkö, että Särkällä on valokuvamuisti? https://www.suomi24.fi/viihde/oho-seurapiirikaun
      Kotimaiset julkkisjuorut
      6
      2076
    6. Se siitä sitten

      Kirjoitan tänne kun en sulle voi. En vaivaa sua enää koskaan. En ikinä tarkoittanut olla ahdistava tai takertuva. Tunteet heräsi enkä osannut olla tyy
      Ikävä
      82
      1717
    7. Ohhoh! Rita Niemi-Manninen otti ison tatuoinnin - Herätti somekansan: "Täydellinen paikka!"

      Rita Niemi-Mannisen suuri, uusi tatuointi on saanut somekansan heräämään talvihorroksesta. Niemi-Manninen otti tatskan rakkauslomalla Aki-miehensä kan
      Kotimaiset julkkisjuorut
      19
      1659
    8. Ihastumisesta kertominen

      Olen päättänyt kertoa tunteistani ihastukseni kohteelle. Erityisen vaikeaksi tilanteeni tekee se, että kyseessä on ns. kielletty rakkaus. Olen jo toi
      Ihastuminen
      92
      1396
    9. Taas Venäjän tiedoittaja akka Varoitti Suomea ja Ruotsia liittymästä Natoon

      Juuri sopivasti julkaistu varoitus, kun Suomen eduskunta alkaa klo 13:50 käsitellä asiaa suorassa TV 1:n lähetyksessä. ILtasanomat.
      Maailman menoa
      439
      1332
    10. Stefusika räkättää

      kun on viikon ollut kuivilla ja poliisi puhalluttaa just silloin. Muutoin olis jääny kiinni. Ja sekös sikamiestä hirnuttaa. Ällö ukko ja vielä ällömmä
      Kotimaiset julkkisjuorut
      80
      1199
    Aihe