Match nach Enum

mkoeni1

Erfahrenes Mitglied
Hallo Leute,

ich habe eine MySQL Tabelle mit einem ENUM discount das aus den Werten 'Yes' und 'No' besteht.

Wenn ich nur dieses Feld abfragen, und speziell darin den Wert 'yes' abfragen möchte benutze ich:
PHP:
select * from tabelle where MATCH(discount) AGAINST('yes' IN BOOLEAN MODE) limit 20;

Leider bekomme ich kein Ergebniss zurück.


Weiß jmd. Rat wie ich an die Aufzählungen mit dem Wert 'yes' rankomme?

Vielen Dank und Gruß
Matthias

PS: Weil ich in einem bestehenden Quelltext eingeschlossen bin, sollte die Lösung nach Möglichkeit nach dem Match Muster laufen.
 
Zuletzt bearbeitet:
So wie ich das aus der Doku lese werden Enums intern über Nummern angesprochen, beginnend bei 1. Also müßtest du mal 1 oder 2 versuchen um yes zu matchen.
 
Hallo,

auch ein Select:
PHP:
select * from tabelle where MATCH(discount) AGAINST('0' IN BOOLEAN MODE) limit 20;

führt zu keinem Ergebniss.

Danke trotzdem und Gruß
Matthias
 
Hallo,

ja das ist richtig. Er bringt jetzt keinen Fehler mehr wenn ich die 0 nicht in Anführungszeichen packe, aber er liefert Empty zurück. Und das sowohl mit der Abfrage nach 0 und 1, obwohl es mindestens einen Wert 'yes' und 'no' gibt.

Was kann ich noch probieren um über MATCH AGAINST an den Wert der Enumeration zu kommen?

Danke und Gruß Matthias
 
Hallo nochmal,

auch der SELECT nach true/false brachte kein Ergebniss.

Gruß Matthias


PS: Hallo Leute, es hat sich erledigt. Ich habe es jetzt anderst gelöst.
neue Funktion mit einem eigenen query:
PHP:
select * from products where discount = "yes"

Danke nochmals für die Anregungen.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück