Jump to content

Or Where Abfrage - Problem


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Recommended Posts

Posted

Hallo liebe Community,

 

bei einer SQL-Abfrage komme ich nicht weiter.

 

Was soll passieren?

Über ein Multiselect Feld kann ein Benutzer unterschiedliche Marken auswählen, für alle ausgewählten Marken sollen dem Benutzer die Produkte angezeigt werden.

 

Technischer Background

Wenn der Benutzer nur eine Marke auswählt, setze ich per PHP dynamisch eine einfache WHERE marke = '[markenname]',

wählt der Benutzer mehere Marken aus, erhält die erste Marke eine WHERE marke = '[markenname]' und alle weiteren Marken dann eine orWhere marke = '[markenname]'.

 

Das ganze sieht dann gekürzt in etwa so aus:

 

SELECT DISTINCT * FROM "Artikel" WHERE (art1.Hauptgruppe IN (0, '2')) AND (kum.Marke = 'Hublot') OR (kum.Marke = ' Ferrari') OR (kum.Marke = ' Breitling') OR (kum.Marke = ' Lange & Söhne') OR (kum.Marke = ' Patek Philippe') ...

 

Das Problem

Angezeigt werden nur Artikel der ersten Marke, alle anderen Marken werden nicht angezeigt.

 

Weiß jemand warum und hat hierzu eine Lösung?

 

Vielen Dank für jeden hilfreichen Tipp!

Posted

Moin,

 

ich denke, die Klammern müssen eher andersrum.

 

Also, die Logik soll sein: Hauptgruppe soll die Werte 0 oder 2 haben und zusätzlich soll das Feld Marke einen der Werte aus der Auswahl haben?

 

Dann müssten die Klammern eher so stehen:

WHERE (art1.Hauptgruppe IN (0, '2')) AND ((kum.Marke = 'Hublot') OR (kum.Marke = ' Ferrari') OR (kum.Marke = ' Breitling') OR (kum.Marke = ' Lange & Söhne') OR (kum.Marke = ' Patek Philippe'))

Dass vor den Werten ab "Ferrari" jeweils ein Leerzeichen steht, ist Absicht?

 

Gruß, Nils

  • Like 1
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...