Hirdetés
- Kétezer eurós csomag lehet a Vivo X300 Ultra
- Poco X8 Pro Max - nem kell ide sem bank, sem akkubank
- Xiaomi Watch S1 - szép az idő
- Xiaomi 15T Pro - a téma nincs lezárva
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Honor Magic V3 - mágikus realizmus
- Samsung Galaxy A56 - megbízható középszerűség
- Apple iPhone 17 Pro Max – fennsík
- Samsung Galaxy S25 - végre van kicsi!
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
Új hozzászólás Aktív témák
-
nyunyu
félisten
N:M kapcsolatnak pont az a lényege, hogy külön-külön lekérdezhető mindegyik variációja.
Teszemazt van egy product táblád:
id name
1 alma
2 körte
3 banán
4 szilva
5 narancsvan egy categoryd:
id name
1 piros
2 sárga
3 zöld
4 kék
5 narancssárgaEzeket összerendelő product_category táblád:
product_id category_id
1 1
1 2
1 3
2 2
3 2
4 4
5 1
5 5Ha erre ráuszítod az előző querymet c.name like '%sár%'-ral, akkor ki fogja neked listázni az almát, körtét, banánt, narancsot, mert azok SÁRga vagy narancsSÁRga kategóriásak.
Ha azt akarod kérdezni, hogy melyik az a termék, amiből van sárga és piros is, akkor kétszer kell a product_category-t és a categoryt joinolni, és azokat ANDdal kérdezni:
select p.*
from product p
join product_category pc1
on pc1.product_id = p.id
join category c1
on c1.id = pc1.category_id
join product_category pc2
on pc2.product_id = p.id
join category c2
on c2.id = pc2.category_id
where c1.name = 'sárga' and c2.name = 'piros'
order by p.date desc;Ez már csak az almát találná meg.
Ha ezt írnád:
where c.name = 'sárga'
or c.name = 'piros'
or c.name = 'kék'
vagy az ezzel ekvivalenswhere c.name in ('sárga','piros','kék')
feltételt, akkor az összes sárga vagy piros vagy kék gyümölcs lejönne (alma, körte, banán, szilva)
Narancs nem, mert itt kategórianévre teljes egyezés a feltétel!
Új hozzászólás Aktív témák
- Apple iPhone 12 64GB, Kártyafüggetlen, 1 Év Garanciával
- ÚJ Acer Nitro V 17 AI - 17.3"QHD 165Hz - Ryzen 7 260 - 16GB - 1TB - Win11 - RTX 5060 - 3 év Gar - HU
- Transcend 512GB NVME SSD // 100% // Számla // Garancia //
- Telefon felvásárlás!! Samsung Galaxy A13/Samsung Galaxy A33/Samsung Galaxy A53
- iPhone 11 Pro 64GB 95% (3 hónap garancia)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

