phpbar.de logo

Mailinglisten-Archive

AW: [php] (OT) MYSQL-Abfrage like

AW: [php] (OT) MYSQL-Abfrage like

Wolfgang Hauck php_(at)_phpcenter.de
Wed, 3 Jul 2002 13:26:09 +0200


Hi Daniel,

>Morgen,

>ich hab ein Problem mit der "like"-Bedingung beim Abfragen einer Tabelle.
>(An dieser Stelle sei angemerkt, dass ich wiedereinmal merke, dass mein Buch
>nur hinlänglich
>befriedigend ist)

>SELECT *  FROM db WHERE * LIKE '%$searchquery%'

>bringt mich leider nicht dazu, dass er alle spalten durchsucht.

Wie auch, denke nur mal an die verschiedenen Formate (date, datetime,
timestamp, int....)

>Koehntopp brachte den hinweiss, dass man jedoch alle spalten explizit mit
"or
>spaltenname...."
>angeben muss, so dass beim hinzufügen einer spalte auch die select-anweisung
>manuell erweitert
>werden muss.

So ist es und bleibt es.

>GIbt es auch eine möglichkeit mit einer einzigen anfrage alle vorkommenden
>spalten/Zellen zu
>durchsuchen ohne vorher zu wissen wie viele es sind bzw. wie diese heissen?

Da wird dir wohl nichts anderes übrigbleiben eine eigene Funktion zu schreiben
die folgendes erledigt:

1. Feldnamen auslesen (mysql_list_fields)
2. Feldtyp ermitteln (mysql_field_type);
3. Query mit gültigen Feldtypen zusammenbasteln
4. Query zurückgeben

Dann musst du nur noch deine Query ausführen.

MFG Wolfgang


php::bar PHP Wiki   -   Listenarchive