Hirdetés
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD vs. INTEL vs. NVIDIA
- Házi hangfal építés
- Amlogic S905, S912 processzoros készülékek
- Vezetékes FEJhallgatók
- Milyen belső merevlemezt vegyek?
- Milyen videókártyát?
- Videós, mozgóképes topik
- HiFi műszaki szemmel - sztereó hangrendszerek
- Plazma TV topic
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Torda: Így lehet fillérekből prémium okosotthon rendszert építeni 2025-ben
- Toomy: FOXPOST: régen jó volt, de már jobban jársz, ha elfelejted
- Klaus Duran: Minden drágul. Vajon a fizetések 2026-ban követi minimálisan?
- Geri Bátyó: Agglegénykonyha 11 – Vörösboros marhaszelet
Új hozzászólás Aktív témák
-
nyunyu
félisten
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; -
tm5
tag
Szerintem le kellene ülni és összeszedni, hogy mik az elvárások és az alapján tervezni egy adatbázist, mert most minden posztodban kiderül valami újabb dolog.
A category oszlopot inkább kiraknám egy külön táblába, mondjuk úgy, hogy ha van egy category szótárod (cat_id, cat_name) akkor lenne egy un. junction táblád (tabla_id, cat_id)
és akkor cat_id alapján gyorsan tudnál keresni. Ez esetben lehetne az IN operátort is használni. Kerüljük a redundanciát ha lehet. Egy Microsoft SQL-es MVP már 15 éve azt írta, hogy egy rendes 3. normálformájú adatbázis sokkal jobban teljesít, mint egy redundanciával teli.Én amúgy szeretek kompozit indexek helyett külön indexet használni leggyakrabban keresett oszlopokra. Esetleg megpróbálhatod ezt is.
Új hozzászólás Aktív témák
- Milyen autót vegyek?
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Karácsonykor nyerte meg a Honor az üzemidőcsatát
- Víz- gáz- és fűtésszerelés
- Villanyszerelés
- AMD vs. INTEL vs. NVIDIA
- Spórolós topik
- Házi hangfal építés
- Örömkönnyek és üres kezek a TriFold startjánál
- Amlogic S905, S912 processzoros készülékek
- További aktív témák...
- 14600K + RTX5060 + 32GB 6000Mhz DDR5 + 2TB + 750W
- GAMER RYZEN 5 3600X/ 16GB DDR4 / RX 5700XT 8GB / 128GB SSD / 1TB HDD
- Gamer : RTX 5070 12GB / 32GB DDR4 / Intel i5 14400 / 1TB NVME SSD /
- GAINWARD GeForce RTX 5070 Python III 12G 36 hónap alza gari - Bontatlan -
- Apple Iphone 16 128GB fekete, kártyafüggetlen, hibátlan, karcmentes
- iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3831
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- KÉSZLETKISÖPRÉSI KARÁCSONYI ULTRAAKCIÓ! - MacBook Air M4 16GB 512GB Garancia!
- BESZÁMÍTÁS! ASRock Z370 i7 8700 16GB DDR4 512GB SSD RX 6600XT 8GB Rampage SHIVA Thermaltake 550W
- AKCIÓ! Lenovo Legion Go S 32GB/1TB kézikonzol garanciával hibátlan működéssel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest


