Ingatlanközvetítő iroda

Egy nagyobb városban évről évre sok ingatlan cserél gazdát. Az eladók és a vásárlók egymásra találását ingatlanközvetítő irodák segítik. Egy ilyen iroda néhány évi működésének lakásokra és családi házakra vonatkozó adatait tartalmazó adatbázisával kell dolgoznia.
A feladat megoldása során kihasználhatja, hogy minden ingatlan csak egyszer szerepel, és mindegyiket csak egyszer hirdették meg.
Amikor az eladók felkeresik az irodát, megadják az ingatlanuk adatait, amelyeket az adatbázisban rögzítenek. A későbbiekben csak az ingatlan árát módosíthatják – akár többször is. A meghirdetéskor, az ár módosításakor és az eladáskor új rekordot rögzítenek az árat tartalmazó táblába, hogy a hirdetés előzményei dátum alapján visszakereshetőek legyenek.

Táblák:

ingatlan (id, kozterulet, hazszam, lakas, falazat)
    id		    Az ingatlan azonosítója (szám), ez az elsődleges kulcs
    kozterulet	A közterület neve, ahol az ingatlan található (szöveg), például Első utca,
		        Második tér stb.
    hazszam	    A házszám, amely alatt az adott közterületen az ingatlan található (szöveg)
    lakas		Megadja, hogy az ingatlan lakás vagy ház (logikai), ha értéke 1, akkor lakás, 
                ha 0, akkor ház 
    falazat		Az épület falazatának típusa (szöveg), például tégla, panel stb.

hirdetes (id, ingatlanid, ar, allapot, datum)
    id		    A hirdetés azonosítója (szám), ez az elsődleges kulcs
    ingatlanid	Az ingatlan azonosítója, amelyhez a hirdetés tartozik (szám), idegen kulcs
    ar		    Az ingatlan millió forintban megadott, adott naptól érvényes ára (három
		        tizedes pontosságú szám). Az eladva állapothoz az eladási ár tartozik.
    allapot		A hirdetés állapota (szöveg), a mező értéke háromféle lehet: meghirdetve,
		        módosítva, eladva. Amikor az ingatlan az adatbázisba kerül, állapota
		        „meghirdetve” lesz. Ezt követően az eladó akár többször is módosíthatja a
		        hirdetésben szereplő árat, ekkor „módosítva” állapottal szerepel a
		        bejegyzés. Ha az ingatlant eladják, a bejegyzésbe „eladva” állapot kerül,
		        árként az eladási ár szerepel, amely különbözhet az utolsó bejegyzett ártól.
    datum		Az adatsor beszúrásának dátuma (dátum)

helyiseg (id, ingatlanid, hossz, szel, funkcio)
    id		    A helyiség azonosítója (szám), ez az elsődleges kulcs
    ingatlanid	Az ingatlan azonosítója, amelyhez a helyiség tartozik (szám), idegen kulcs
    hossz		A helyiség hosszúsága méterben (egy tizedes pontosságú szám)
    szel		A helyiség szélessége méterben (egy tizedes pontosságú szám)
    funkcio	    A helyiség funkciója (szöveg), például nappali, háló, WC, konyha, terasz stb.

alt text

Feladatok

  1. A kozvetito.sql állomány tartalmazza az adatokat. (A táblákat és a táblába beszúró SQL-paracsokat.) Futtassa le a kozvetito.sql-t.

  2. Készítsen lekérdezést, amely megadja, hogy az adatbázisban milyen közterületeken kínálnak lakást! Minden közterület neve csak egyszer, ábécérendben jelenjen meg!

  3. Lekérdezés segítségével adja meg, hogy az „Agyagos utca” ingatlanjait milyen áron hirdették meg! Jelenítse meg a házszámot és a meghirdetéskor megadott árat!

  4. Készítsen lekérdezést, amely megadja, hogy a közvetítő cég az itt szereplő ingatlanok eladásából mennyi bevételre tett szert 2021-ben, ha az eladási ár 1,5 százalékát mint közvetítői díjat megkapta!

  5. Lekérdezés segítségével adja meg, hogy a legdrágábban meghirdetett ingatlan ára hányszorosa volt a legolcsóbban meghirdetett ingatlan árának! Az árváltozásokat és az eladásokat ne vegye figyelembe! Adja meg az arányt kerekítés nélkül!

  6. Lekérdezés segítségével határozza meg, hogy melyik az az ingatlan, amelyet a legrégebben hirdettek meg, de még nem adtak el, és amelynek a hirdetését sem módosították! Jelenítse meg a közterület nevét és a házszámot, valamint a hirdetés feladásának dátumát! Ha több ilyen ingatlan van, akkor elég az egyik adatait megjelenítenie.

  7. Lekérdezés segítségével adja meg azokat az ingatlanokat, amelyeket ugyanazon az áron adtak el, mint amilyenen meghirdették őket! Vegye figyelembe, hogy az ingatlan ára az eladáskor is változhat. Az ingatlan címét, azaz a közterület nevét és a házszámot, valamint az árát jelenítse meg!

  8. Szeretnénk meghatározni azon ingatlanok címét, amelyekben sem külön „konyha”, sem külön „WC” nincs! Egészítse ki a kérdőjelek helyén a lekérdezést.

    SELECT kozterulet, hazszam FROM ingatlan WHERE id NOT IN (???) AND id NOT IN (???);
  9. Az ingatlanosok az alapterület meghatározásánál a terasz területét csak 50%-ban számítják bele az alapterületbe. Készítsen lekérdezést, amelyik megadja a 180 négyzetméternél nagyobb alapterületű ingatlanok címét és területét!
    Segítségül az elágazás SQL-függvény: \

    IF(feltétel, érték1, érték2) eredménye, ha a feltétel igaz, akkor érték1, különben érték2.