Wozu? Was ist das Problem? Ist der SQL zu langsam?
Announcement
Collapse
No announcement yet.
Artikelfilter ähnlich wie bei mobile.de
Collapse
X
-
Artikelfilter ähnlich wie bei mobile.de
Zuletzt editiert von Christian Marquardt; 03.12.2011, 16:16.Christian -
Das ist dann doch eher ein Problem der Optimierung der DB -> http://entwickler-forum.de/forumdisplay.php?f=28
Vermutlich setzen von Indzies, Views?....Christian
Comment
-
hallo
Indizes sind auf den join-Spalten gesetzt ok dann erstelle ich einen andern Eintrag bei
http://entwickler-forum.de/forumdisplay.php?f=28
vielen dank
Comment
-
Artikelfilter ähnlich wie bei mobile.de
Ich entwickle gerade eine derartige Filtermöglichkeit ähnlich wie bei mobile.de "die Fahrzeugsuche ".
Ich muss ein Filter programmieren in dem Anhängerkupplungen, für ein Produkt mit sehr verschieden boolescher Eigenschaften (zurzeit über 40(werden bestimmt mehr), die als Checkboxen realisiert wird
Also ich muss erstmal überprüfen, ob ein Produkt eine bestimmte Eigenschaften und ob sie in dem gesuchten Zeitraum verhandeln ist .Dazu muss die Anzahl der Eigenschaften neu berechnet werden. wenn eine Eigenschaft aktiviert bzw. deaktiviert wird.
Hallo
die MySql Abfrage sieht ungefähr so aus
SELECT count(distinct(prop.id)) FROM Product p
INNER JOIN properties prop ON p.`id` = prop.id
WHERE prop.id =1 and prop.id =2 and prop.id =1 and prop.id =2 and ....
group by prop.id
Das ist eigentlich nicht so kompliziert, so lange die Anzahl der ausgewählten Eigenschaften nicht groß sind. aber in worst case werden alle Eigenschaften aktiviert. so dass die Performance der Abfrage stark beeinflusst wird.Indizes sind auf den join-Spalten gesetzt
Eine Lösung mittels Binärwerte kommt leider wegen der großen Anzahl der Eigenschaften der Eigenschaften nicht in Frage!!!
hat jemand eine Idee bzw. Erfahrung damit??
Comment
-
Hallo,
Originally posted by maik2211 View Post...
die MySql Abfrage sieht ungefähr so aus
SELECT count(distinct(prop.id)) FROM Product p
INNER JOIN properties prop ON p.`id` = prop.id
WHERE prop.id =1 and prop.id =2 and prop.id =1 and prop.id =2 and ....
group by prop.id
Das ist eigentlich nicht so kompliziert, ...
Hier wäre ein OR oder ein IN richtig.
Gruß Falk
P.S.: Formatierung von SQL in BeiträgenWenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.
Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!
Comment
Comment