Hirdetés

Új hozzászólás Aktív témák

  • Szmeby
    tag

    Sziasztok!

    Elég érdekes kérdésbe futottam:
    Apróhirdető oldal, szűrések.
    Vannak kategóriák, a kategóriáknak pedig sajátos mezői, pl ha ingatlant választ, akkor kijön h szobák száma, ha autót választ akkor futott kilóméter stb, kb ezer ilyen custom mező jelenhet meg.
    Mivel ez nem lehet egy táblában termékenként 1000 oszlopban tárolni, ezért a custom paramétereket úgy tárolom, hogy egy külön táblában elmentem az adott hirdetés id-ját, az adott paraméter nevét (custom_szobakszama, custom_kilomterek), és a hozzá tartozó értéket.
    Ez rendben is van, menti szépen, visszatölti szépen szerkesztésnél stb stb...

    Kérdésem az lenne, hogy hogy tudok ez alapján szűrni, keresni?

    Pl:
    Hirdetések tábla:
    id,feltöltő_id,hirdetés címe,hirdetés szövege,dátum,kategória1,kategória2,kategória3,
    1,110,Ingatlan hirdetés,Hirdetésem szövege,2015.10.10,45
    2,110,Autó hirdetés,Hirdetésem szövege,2015.10.11,48

    Custom mezők tábla
    id,hirdetés_id,mező_neve,érték
    1,1,szobak_szama,3
    2,1,terulet,32
    3,2,kmora,10000
    4,2,loero,10

    Ossze van joinolva 3 kategora tabla, es a user tabla is, ebbe a lekérdezésbe kellene megoldani, hogy WHERE-el keresni tudjak a customs mezők tábla alapján is. Pl ha az összes olyan hirdetést akarom ahol a szobak_szama =3 azt hogy tudom lekérni?

    Előre is köszi. :R
    Esküszöm megkeresném, mint mindig mindent, de ezt most fogalmam sincs hogy írjam be :DD

    Ilyesmire gondoltál?

    select *
    from hirdetes h
    inner join user u on u.id = h.userid
    inner join kategoria1 k1 on k1.id = h.kategoria1
    inner join kategoria2 k2 on k2.id = h.kategoria2
    inner join kategoria3 k3 on k3.id = h.kategoria3
    inner join custom c on c.hirdetes_id = h.id
    where c.mezo_neve = 'szobak_szama' and c.ertek = 3;

    Egyébként nem lenne ésszerűbb az egymástól független fogalmakat külön táblában tárolni?
    Vagyis külön tábla az ingatlan hirdetéseknek, külön az autóknak, stb.
    És akkor lehet minden szépen field. Az úgy már csak nem olyan sok.

Új hozzászólás Aktív témák