Antworten: 6
Seite [1] |
|||
WH!T3 King for a day Herkunft: Ostrhauderfehn Beiträge: 327 |
# Thema - 14.02.2013 um 17:28 Uhr
Hallo liebes CS Team ........ upps fast auf meiner Schleimspur ausgerutscht Mein Problem Ich Filtere gerade eine Ausgabe Beispiel Tabelle Product name--------level-------sell Brötchen------0--------Bäckerei Brot------------0--------Bäckerei Bonbons------0--------Kiosk Forelle---------1--------Fischmarkt Hose-----------1--------Boutique Cityroller-------1--------Spielzeugladen Kette-----------2--------Juwelier Rasenmäher--3--------Baumarkt Bett------------3---------Möbelhaus usw. jetzt möchte ich die Produkte danach Filter was im Supermarkt Verkauft werden kann (level 0 + Fischmarkt Produkte) (ich muss dazu sagen es gibt für jedes Produkt ein Speziellen Laden) nur der Supermarkt ist ein Geschäft der kann alle level 0 Produkte Verkaufen und lvl 1 Fischmarkt Produkte) ich geh so vor (was aber nicht geht ^^) 'level = "0" AND sell = "Fischmarkt" kann ja nicht gehen da ich schon angegeben habe nur lvl 0, wie kann ich sowas hinbekommen? Habe auch schon andere Formen versucht aber irgendwie klappt alles nicht. Wie man sieht es gibt auch Produkte die lvl 1 sind aber nicht am Fischmarkt verkauft werden können, die müssten dann rausgefiltert werden, sonnst könnte ich ja level = "1" mitnehmen Sprich ich will nur level 0 aufgelistet haben + level 1 Fischmarkt Produkte sowas wie ein "alles ausser" Operator gibt es ja nicht. Es gibt 5 Level 19 Geschäfte und knapp 190 Produkte da will ich so kurz es geht Filtern ------------------ Mfg Pascal Zuletzt editiert von WH!T3 am 14.02.2013 um 17:30 Uhr (1x Editiert)
|
||
Inaktiv |
|
||
Deaktiviert Supporter Beiträge: 1287 |
# Antwort: 1 - 14.02.2013 um 17:34 Uhr
SELECT * FROM products WHERE level=0 OR sell="Fischmarkt" ? |
||
Inaktiv |
|||
WH!T3 Thread-Ersteller King for a day Herkunft: Ostrhauderfehn Beiträge: 327 |
# Antwort: 2 - 14.02.2013 um 17:55 Uhr
mhh ich muss doch alles aufschreiben, ich dachte es reicht auf der kurzen Version meine volle filterung lautet so 'users_delete = 0 AND users_active = 1 AND products_level = 0 AND products_typ = "Endprodukt" OR products_sells = "Fischmarkt"' users_delete = 0 ist nur eine Vorsichtsmaßnahme dazu habe noch die Produkte von den Deaktivierten leuten noch drin die rausgefiltert werden durch dieses OR products_sells = "Fischmarkt" werden die 'users_delete = 0 AND users_active = 1 ja wieder hinfällig da teilweise Deaktivierte User noch Fischmarkt Produkte im System haben daher dürfte OR nicht gehen EDIT: würde NOT users_delete = 1 AND NOT users_active = 0 ein Unterschied bringen? EDIT2: Geht auch nicht die Deaktivierten Users Produkte werden wieder aufgelistet :/ Spielt die Anordnung der Filterung eine Rolle? Wird das so berechnet? (x AND x) OR (X AND X) (x AND x AND x) OR (X) ? EDIT3 Ich glaub ich habs, kann das richtig sein? Funktionieren tut es
habs jetzt so Symbolisch (delete=0 AND activ=1 AND level=0 AND typ=Endprodukt ) OR ( delete=0 AND activ=1 AND level=1 AND sells=Fischmarkt) ------------------ Mfg Pascal Zuletzt editiert von WH!T3 am 14.02.2013 um 18:22 Uhr (12x Editiert) |
||
Inaktiv |
|||
Deaktiviert Supporter Beiträge: 1287 |
# Antwort: 3 - 14.02.2013 um 18:24 Uhr
Klammern macht nicht nur in der Mathematik Sinn. Auch PHP und mySQL versteht klammern. |
||
Inaktiv |
|||
WH!T3 Thread-Ersteller King for a day Herkunft: Ostrhauderfehn Beiträge: 327 |
# Antwort: 4 - 14.02.2013 um 18:32 Uhr
Umso mehr ich drüber Nachdenke umso mehr macht es Sinn. Danke ------------------ Mfg Pascal |
||
Inaktiv |
|||
Deaktiviert Supporter Beiträge: 1287 |
# Antwort: 5 - 14.02.2013 um 18:34 Uhr
Dein Ansatz oben ist aber falsch, denk nochmal drüber nach. Der Query ist viel zu groß. Zuletzt editiert von Schalla am 14.02.2013 um 18:34 Uhr (1x Editiert) |
||
Inaktiv |
|||
Fr33z3m4n Medal of Honor Herkunft: Hamm Beiträge: 11094 |
# Antwort: 6 - 15.02.2013 um 09:11 Uhr
SELECT * FROM products WHERE level=0 OR (level=1 AND sell="Fischmarkt") ------------------ mfg Patrick "Fr33z3m4n" Jaskulski Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer. |
||
Inaktiv |
|||
Antworten: 6
Seite [1] |
Sie müssen sich registrieren, um zu antworten. |