Hi,
ich habe eine Tabelle in der die UserID und der Name gespeichert werden.
Nun habe ich eine eingabe in der jemand in dieser Tabelle suchen kann.
Meine frage ist, ob diese abfrage Sinvoll / Gut gelöst ist:
SELECT * FROM accounts
WHERE IF('1234' REGEXP '[1]+$',id=1234 OR Name LIKE '%1234%',Name LIKE '%1234%')
In diesem Fall ist 1234 die eingabe.
Erklärung: Die abfrage soll bewirken das wenn der User Buchstaben eingibt wird in dem Feld "Name" gesucht, gibt er eine Zahl ein soll das System dies
erkennen und sowohl das Feld "id" als auch "Name" durchsuchen (ein User könnte sich ja z.b. 0815 nennen). Gibt der User nicht nur Zahlen ein,so wird nur in dem Feld "Name" gesucht.
Habe jetzt ein beispiel von mir gepostet das sogar geht. Nun meine frage ob dies ok ist oder ob man was verbessern könnte. Und NEIN ich möchte nicht vorher
per php auf Zahlen prüfen und dann den query erst zusammen stellen !
mfg MrSpoocy
[:digit:] ↩︎