Moin mal wieder. Ich möchte aus einer Tabelle eine ID anhand eines Teilstrings vorschlagen, der in einer Zeile in beliebiger Spalte vorkommen könnte, wobei Anzahl und Namen der Spalten unbekannt sind (bzw. beliebig, da auf frei wählbare Tabellen anwendbar (solang sie eine id-Spalte haben)).
Mir schwebte, so rein vom "Sprachgefühl" her sowas in der Art vor:
Code:
SELECT id FROM mytable WHERE ANY COLUMN LIKE '%substr%'
Scheint nicht zu klappen, war aber einen Versuch wert
Dann versucht:
Code:
SELECT id, CONCAT_WS(',', *) val FROM mytable WHERE val LIKE '%substr%'
Das hat zwei Probleme: Wildcard im CONCAT() ist nicht, und selbst wenn ich via DESCRIBE ermittelte Spaltennamen einsetze, wird bemeckert, dass es die Spalte "val" nicht gäbe in der WHERE-Klausel.
Nach reichlich Rumprobieren und
MySQL Referenz studieren daher nun die Frage an euch: Wüsste da jemand spontan, wie ich das realisieren könnte? Es ist ja im Grunde eine Art Volltextsuche in einer Tabelle. Ich hoffe einfach mal, dass das schon mal jemand hier gemacht hat
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)