string zerlegen und einzelne Begriffe in Datenbank vergleichen (500)
bearbeitet von
Hallo Bigna,
du kannst eine IN Klausel konstruieren.
D.h. du hast dein Array mit Suchwörtern. Die behandelst Du erstmal vor, so sie für den DB Kontext korrekt escaped sind (PDO::quote oder mysqli::escape_string).
~~~php
$inClause = "('" . implode("', '", $keywords) . "')";
$sql = "SELECT ... FROM keywords WHERE keyword in $inClause";
~~~
Das kann immer noch dauern und deine Keywords-Tabelle sollte einen Index auf der keyword-Spalte haben, aber es ist immerhin nur ein String.
Probier's aus; wenn das zu langsam ist, muss man schauen, ob das in-memory schneller geht. Vermutlich nicht.
_Rolf_
--
sumpsi - posui - obstruxi