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

  • nyunyu

    félisten

    válasz Taci #5045 üzenetére

    Jaj, itt már a relációs adatmodell alapjai is hiányoznak.

    Ahogy tm5 írja, ki kéne tenni a kategóriákat egy külön táblába, amiben van egy category_id, és egy name mező.
    Mivel ez pártíz-száz különböző értéket fog tartalmazni, ezen akár még a lájk is működhetne gyorsan, nem fájna annyira, mint egy nagyonnagy táblán.

    Mivel egy termékhez több kategóriát is szeretnél tárolni, illetve egy kategóriába több termék is eshet, így N:M reláció lesz a termék és a kategória között.
    Ennek leképezése úgy történik, hogy csinálsz egy termék_kategória táblát, amibe beleteszed a termék azonosítóját, és a kategória azonosítóját.
    Ahány kategóriába tartozik, annyiszor veszed fel ide a terméket, mindig a következő kategória azonosítójával.

    Lekérdezéskor meg joinolod az id-k mentén a három táblát, valahogy így:

    select p.*
    from product p
    join product_category pc
    on pc.product_id = p.id
    join category c
    on c.id = pc.category_id
    where c.name like '%akármi%'
    order by p.date desc;

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