Kysymys: Kuinka saan listattua huoneiston osakemäärän, huonemäärän ja pinta-alan sekä maksajan tavoitteet valitulta jaksolta?
Vastaus: SQL-kyselytilastolla seuraavasti:
- Valitse Tulosta | Kyselytilastot (SQL) | Luo kyselyitä
- Valitse vasemman yläkulman alaspudotuslistasta seuraava vapaa määrittämätön kysely ja anna sille sopiva nimi, esim. ”Osakkeet, huoneistot ja tavoitteet”
- Kopioi jonpi kumpi alla oleva SQL-lause (maalaus ja ctrl+C = kopioi) ja liitä (ctrl+V = liitä) se isännöintiohjelman sql-kyselytoiminnon isoon tekstikenttään
- Poista tähti * unionin ja selectin välistä
A. Seuraavalla SQL-kyselyllä saat tulosteen, jossa näkyy mm. huoneiston osakemäärä, huoneluku ja pinta-ala sekä maksajan tavoitteet valitulta jaksolta:
SELECT Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita,
Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka, Sum(Laskurivit.Summa) AS Tavoite
FROM Huoneistot INNER JOIN (Laskurivit INNER JOIN Maksajat ON Laskurivit.Maksaja = Maksajat.ID)
ON Huoneistot.ID = Laskurivit.Huoneisto WHERE CDate(Laskurivit.Eräpäivä) BETWEEN DateValue(’%1’) AND DateValue(’%2’)
GROUP BY Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita,
Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka ORDER BY Huoneistot.ID
Kysymys %1 on jakson alkamispäivä.
Kysymys %2 on jakson päättymispäivä.
B. Oheisella kyselyllä saat listaukseen myös ne, joilla ei tavoitteita ole (eli jos olet poistanut nollarivit Laskuriveistä):
SELECT Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita,
Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka, Max(Tavoite) AS Laskutettu
FROM (SELECT Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita,
Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka, Sum(Laskurivit.Summa) AS Tavoite
FROM Huoneistot INNER JOIN (Laskurivit INNER JOIN Maksajat ON Laskurivit.Maksaja = Maksajat.ID)
ON Huoneistot.ID = Laskurivit.Huoneisto WHERE CDate(Laskurivit.Eräpäivä) BETWEEN DateValue(’%1’)
AND DateValue(’%2’) GROUP BY Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl],
Huoneistot.Huoneita, Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka
UNION *SELECT Huoneistot.ID, Huoneistot.[Porras ja huoneisto], Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita,
Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite, Maksajat.Paikka, 0 AS Tavoite FROM Huoneistot
INNER JOIN (Viitenumerot INNER JOIN Maksajat ON Viitenumerot.Maksaja = Maksajat.ID)
ON Huoneistot.ID = Viitenumerot.Huoneisto) GROUP BY Huoneistot.ID, Huoneistot.[Porras ja huoneisto],
Huoneistot.[Osakkeita kpl], Huoneistot.Huoneita, Huoneistot.[Pinta-ala yj], Maksajat.Nimi, Maksajat.Osoite,
Maksajat.Paikka ORDER BY Huoneistot.ID
Kysymys %1 on jakson alkamispäivä.
Kysymys %2 on jakson päättymispäivä.
- Paina tallenna ja/tai suorita, jolloin näet taulukossa haluamasi tiedot
- Käytettävissäsi on Tulosta-valikon paperitulosteet ja Muokkaa-valikon erilaiset leikepöytäkopiointiversiot.
- Seuraavilla käyttökerroilla saat tulosteen suoraan valinnalla Tulosta | Kyselytilastot (SQL) | Valmiit kyselyt | Osakkeet, huoneistot ja tavoitteet