On säätaulu mihin kerätään eri paikkakuntien säätietoja. Taulussa mm. kentät Säärivi(autonum) Paikkakunta(Text) Lämpötila(num)
Nyt pitäisi saada haku, joka antaa paikkakunnan jonka suurimman ja pienimmän lämpötilan erotus on suurin.
Kiitos!
Nyt pitäisi saada haku, joka antaa paikkakunnan jonka suurimman ja pienimmän lämpötilan erotus on suurin.
Kiitos!
Vastaukset 4
Vanhimmat
Mitenkäs tällainen sopisi ongelmaasi?
Taulu: saatila
Taulussa sarakkeet:
- saaRiviId (numero, pakollinen)
- paikkakunta (tekstiä, pakollinen)
- mittauspvm (pvm, pakollinen)
- lampotila (numero, pakollinen)
oletan, että ohjelmassasi on mittauspvm..
Lähtökohta: Halutaan _yhdelle kyselyriville_ seuraavat tiedot:
- pienin mahdollinen lämpötila yhdellä
paikkakunnalla. Mukana kaikki
mittauspäivät.
- suurin mahdollinen lämpötila yhdellä
paikkakunnalla. Mukana kaikki
mittauspäivät.
- sen kaupungin nimi, jossa edellisten
erotus on suurin.
SQL:n GROUP BY -rakenne sopii mainiosti kuvaamaasi ongelmaan.
SELECT DISTINCT saatila.paikkakunta, Max(saatila.lampotila) AS Maksimi, Min(saatila.lampotila) AS Minimi, Max([lampotila])-Min([lampotila]) AS erotus
FROM saatila
GROUP BY saatila.paikkakunta
ORDER BY Max([lampotila])-Min([lampotila]) DESC;
Ylläoleva kysely näyttää kaikkien kaupunkien tilanteen. Mikäli haluat näyttää ainoastaan sen kaupungin, jossa ero on suurin, voit joko muuttaa kyselyäsi sopivalla tavalla, esim näin:
SELECT DISTINCT TOP 1 saatila.paikkakunta, Max(saatila.lampotila) AS Maksimi, Min(saatila.lampotila) AS Minimi, Max([lampotila])-Min([lampotila]) AS erotus
FROM saatila
GROUP BY saatila.paikkakunta
ORDER BY Max([lampotila])-Min([lampotila]) DESC;
Eli tuossa siis tuo TOP 1, joka näyttää ainoastaan yhden tulosrivin. Oikeissa tietokannoissa tuo komento on usein jokin muu, esim LIMIT..OFFSET tms.
Mikäli haluat tehdä jonkinlaisen "kuukauden suurimmat vaihtelut"-kyselyn, niin se onnistuu helposti lisäämällä päivämäärärajaus WHERE -määrityksen sisään (joka tosin puuttuu esimerkistä).
Auttoiko yhtään?
ps: Älä käytä ääkkösiä sql:ssa.
Kiitos kaunis!
Vastauksesi oli erittäin kattava ja selvisin ongelmastani sen avulla.
Juuri kaltaisesi henkilöt kannustavat turvautumaan näihin foorumeihin.
Kerran vielä, KIITOS!
Kiitos ja kumarrus!
Vastauksesi oli varsin kattava ja sain ratkaistua ongelmani sen avulla.
Dear ex-Pulassa,
Hyvä että asia selvisi noinkin nopeasti. Itse käytän tuontyyppisissä ongelmissa googlen keskusteluryhmähakua. Toimii (lähes) aina. Kaikissa ongelmissa.