Archívum - Okt 28, 2009 - Fórum téma
Nehéz a lekérdezés, ha a szűrési feltételek több sorban vannak
Sziasztok!
Lenne egy kis problémám. Webáruház. Termékszűrés. Az adatbázistábla így néz ki:
CIKKSZÁM | PARAMÉTERNÉV | PARAMÉTER ÉRTÉK
CIKKSZÁM | MÁSIK PARAMÉTERNÉV | MÁSIK PARAMÉTER ÉRTÉK
Például:
A1 | hossz | 110
A1 | súly | 50
A2 | hossz | 130
A2 | súly | 50
Egy űrlap segítségével ki lehet választani, hogy milyen paraméterek kerüljenek be a feltételekbe... a feltételek között mindig ÉS kapcsolat van. Pl...
hossz 110 és súly 50. Hogy lehetne olyan lekérdezést írni, ami visszadja, hogy A1? A baj az, hogy a WHERE résznél nem adható meg, hogy paraméternév=hossz AND paraméterérték=110, hiszen ezután kellene egy AND paraméternév=súly AND paraméterérték=50 is, ami viszont már nem erre, hanem egy másik sorra fog vonatkozni.
Hogy lehetne ezt megoldani? Gondolkodtam rajta, hogy mindegyik feltételt lekérdezem, GROUP By-al összeszámolom az azonos cikkszámokat és ha a számuk pont annyi, mint ahány keresési feltétel van, akkor azok a megfelelő termékek, ez viszont gányolás. Van valakinek jobb ötlete?
Nagyon szépen köszönöm!
■ Lenne egy kis problémám. Webáruház. Termékszűrés. Az adatbázistábla így néz ki:
CIKKSZÁM | PARAMÉTERNÉV | PARAMÉTER ÉRTÉK
CIKKSZÁM | MÁSIK PARAMÉTERNÉV | MÁSIK PARAMÉTER ÉRTÉK
Például:
A1 | hossz | 110
A1 | súly | 50
A2 | hossz | 130
A2 | súly | 50
Egy űrlap segítségével ki lehet választani, hogy milyen paraméterek kerüljenek be a feltételekbe... a feltételek között mindig ÉS kapcsolat van. Pl...
hossz 110 és súly 50. Hogy lehetne olyan lekérdezést írni, ami visszadja, hogy A1? A baj az, hogy a WHERE résznél nem adható meg, hogy paraméternév=hossz AND paraméterérték=110, hiszen ezután kellene egy AND paraméternév=súly AND paraméterérték=50 is, ami viszont már nem erre, hanem egy másik sorra fog vonatkozni.
Hogy lehetne ezt megoldani? Gondolkodtam rajta, hogy mindegyik feltételt lekérdezem, GROUP By-al összeszámolom az azonos cikkszámokat és ha a számuk pont annyi, mint ahány keresési feltétel van, akkor azok a megfelelő termékek, ez viszont gányolás. Van valakinek jobb ötlete?
Nagyon szépen köszönöm!