Millä skriptillä tahi SQL-lausekkeella voisin konvertoida taulun A tiedot taulun B muotoon?
Table A Person Month Value
A 3 2,71
A 3 130,00
A 6 2,65
A 6 34,00
A 6 25,10
A 6 5,50
A 12 2,61
B 3 21,10
B 3 2,35
B 6 2,91
B 12 2,76
B 12 43,00
C 3 13,00
C 6 6,00
C 12 11,20
Table B Person Month Value Value Value Value
A 3 2,71 130,00
A 6 2,65 34,00 25,10 5,50
A 12 2,61
B 3 21,10 2,35
B 6 2,91
C 3 13,00
C 6 6,00
C 12 11,20
Taulun A data taulun B muotoon!
7
140
Vastaukset
- Väärä foorumi?
Microsoftin sivuolta löytyy kaikkee SQL kielesstä .... Ei tälläsiä töitä ala kukaan sun puolesta tekemään. PAitti jos palkasta sovitaan. Onhan niitäki jotka ottaa toimeksiantoja ja lähettää työn suoritettavaksi kiinaan ja vetää loput välistä. Eihän me ees autettas jos me luotas ratkaisu valmiiksi... Enkä ole ihan varma tosta datasta mitä sen pitäs esittää ... Karkasikohan toi rivitys...? On minullakin koko SQLkoulutussetti kansiossa. Niille on omat keskustelufoorumit eri puolilla nettiä
Näillä palstoilla pyörii enempi taviksia ja suurin osa neuvovista ei ole töissä käynykään varmaan 20 vuoteen ... Tunnetaan nimiltä ihan toisissa olosuhteissa kuin mitä antavat ymmärtää. Työssä käyvät ei usein istu näillä foorumeilla tavakseen. Englanninkielen taito avustaisi etsinnässäsi. Pojat tulee kohta kyllä syöttään läpiä päähänsä perässä mutta mee oikeesti selaan foorumeita joissa on ton tietokantaohjelmoinnin ammattilaisia tai kysele joltain erikoistuneelta kouluttajalta. Mikään tähtitieteellinen setti toi ei oo mutta olen valinnu aikaaan elämän koodaamisen sijaan ja pistä tälläsiä asioita arkimuistiini. - Ei taida onnistua
Monen samannimisen kentän tekeminen.
- 1+1
Ei tuollaista B-taulua tarvita (huono toteutus, vaikka siinä olisikin uniikit kentät value1 value2 jne, se ei vaan toimi tauluna).
A-tauluun voidaan tehdä haluttu select-haku mikä tuottaa vastaavat rivit mitkä B-tauluehdotuksessa nyt on, käyttämällä group by ja order by sql-valitsimia, esim tietyn henkilön ostokset (valuet) kuukausittain järjestettynä.
A-taulun rivit pitäisi olla uniikkitunnistettavia=sopiva primary key, esim
Id, person, timestamp, value
(id voisi olla autogeneroitu=uniikki primary key, timestamp on datetime tai pelkkä date, kk on liian epätarkka aikakentäksi mutta kk saadaan kyllä luettua datetime tai date arvosta käytettäväksi select-ehtona haluttaessa)
Tietokantasuunnittelu pitäisi tehdä tehtäväkuvaus-käsitemalli(luokkakaavio)-tietomalli-normalisointi-menetelmällä, sillä saadaan käsiteltyä kokonaisuus ja oikeat taulut (nyt tässä kysymyksessä on esitetty vain yksi taulu eikä tässä näy mistä sen kentät tulee eli kuinka järkevä se on). Googlaa: tietokantasuunnittelu
Select-hakujen teko vaatii sql:n opiskelua, esimerkkejä löytyy googlaamalla.- jepsjoo
Tyypillinen vastaus, jossa tiedetään tarkalleen syyt ja seuraukset jo kehittyneestä tietokannassa. Eli jos joku kysyy neuvoa, kannattaa kirjoitaa neuvo, eikä aloittaa moraalisaarnaa.
Toki neuvossa on perää, mutta tuo neuvo nyt näyttää lähinnän tietokantasuunnittelun perusteet kirjasta pikaisesti luetultulta heitolta.
Mutta totta. esimerkkejä löytyy googlaamalla. Vastaus on äärimmäisen helppo ja löytyy tämän toteamuksen alta
- helppoa1234
Temppu on helppo.
Kun taulut on olemassa niin
insert into taulua (kentät....) select kentät from taulub- Super Major
Hatarin tiedoin ja vanhoja muistellen (mySQL). Ei tarvitse vakavasti ottaa. 1 plus 1:tä peesaten, ensimmäisessä taulussa jotain tolkkua, toisessa ei, jos sitä katsoo päivittämisen kannalta. Siihen voi henkilön arvoja tallentaa vaikka kuinka paljon. Onkohan tuo pilkun käyttö minkään arvon kohdalla perusteltua, siis piste. Mainittu id tietysti (primary, autocomplete), ja edelleen toistoa: date- tai ehkä time- kentistä voisi olla hyötyä datan käsittelyssä, enemmän kuin 1,2,3 jne. Aika peruskauraa, joka on osattava, jos kiinnostusta riittää. Vihjeenä: Kiinaan asti ei koodaria kannata lähteä jäljittämään.
- Super Major
Super Major kirjoitti:
Hatarin tiedoin ja vanhoja muistellen (mySQL). Ei tarvitse vakavasti ottaa. 1 plus 1:tä peesaten, ensimmäisessä taulussa jotain tolkkua, toisessa ei, jos sitä katsoo päivittämisen kannalta. Siihen voi henkilön arvoja tallentaa vaikka kuinka paljon. Onkohan tuo pilkun käyttö minkään arvon kohdalla perusteltua, siis piste. Mainittu id tietysti (primary, autocomplete), ja edelleen toistoa: date- tai ehkä time- kentistä voisi olla hyötyä datan käsittelyssä, enemmän kuin 1,2,3 jne. Aika peruskauraa, joka on osattava, jos kiinnostusta riittää. Vihjeenä: Kiinaan asti ei koodaria kannata lähteä jäljittämään.
Siis date-keentästä, ei kentistä. Muuten ihan turha vastaus, yksplusyks kertoi jo olennaisen.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Mies, mitä minun pitäisi tehdä
Niin, mitä naisen siis pitäisi tehdä, että lähestyisit ja tekisit aloitteen? Mikä on riittävä kiinnostuksen osoitus juur1822658- 1952197
Toivottavasti et mussukka elättele toiveita meikäläisen suhteen
Tiedän mitä olet touhunnut joten aivan turha haaveilla mistään enää 👍1772006Sofia Virralla ja Minja Koskelalla ei mitään käsitystä terveyskeskusmaksuista!
Vasemmistopimut Sofia ja Minja täysin ulkona sote asioista, ei minkäänlaista käsitystä edes mittaluokasta, missä terveys1241839- 1671814
Summit-tippuja Nicola sai Carolalta yllättävän viestin - Some älähtää rajusti: "Älä viitsi..."
The Summit Suomi -kisa käy kuumana kylmässä Norjan vuoristossa. Nicola tiputettiin kisasta juuri ennen finaalia. Likaise311685Kompostointitarkastaja tuli tarkastukselle!
En ole ikinä kompostoinnut ja eilen kävi kompostointitarkastaja kylässä. Tosi hianoa byrokratiaa taas: "Laki edellyttää,721317Varattais lähihotellista
🥰 huone viikoksi. Oltais vaan ja tilattais huonepalvelusta herkkuja! Viikonloppukin käy jos et viikoksi ehdi ❤ Hyvää1791295Juusolle sataa vihaisia viestejä hoitajilta ja loput nauravat hänelle
Ei löydy montaakaan, joka kehuisi Juuson toimintaa ministerinä: "Selvä enemmistö Juuson päivitykseen reagoineista on su1721250Persuehdokas uhkasi tappaa "jätkän" ja ravintolayrittäjän
Kuuntele tästä kuinka meuhkaa. https://www.iltalehti.fi/politiikka/a/4eb3034d-48c5-4f31-b53c-42be3dc9607c801201