phpbar.de logo

Mailinglisten-Archive

keyword search in all fields of a table

keyword search in all fields of a table

Michael Donning donning at informenta.de
Don Mar 13 08:30:48 CET 2003


Hallo Thomas,

> -----Original Message-----
> From: Wolf Thomas [mailto:t.wolf at gmx.at]
> hätte da noch ein frage.
>
> wie kann man am besten eine keywordsearch über alle felder einer tabelle
> machen??

select * from table where col1 like '%keyword%' or col2 like '%keyword%'
.....

oder

select * from table where concat(col1,col2,...) like '%keyword%'

wenn bestimmte Spalten den Wert NULL annehmen können muß dies beachtet
werden:

select * from table where concat(IFNULL(col1,''),IFNULL(col2,''),...) like
'%keyword%'

wenn das Ganze generisch sein soll, dann verwende "describe <tabname>" um
die Spalten abzufragen, picke dann die VarChar vielleicht auch Char Typen
heraus und bastel Dir dein eigenes Select-Statement.

Die Performance ist natürlich katastrophal, weil die gesamte Tabelle Feld
für Feld abgesucht wird.


Grüße Michael Donning

-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive