Rolf B: string zerlegen und einzelne Begriffe in Datenbank vergleichen (500)

Beitrag lesen

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).

$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 eine Query.

Probier's aus; wenn das zu langsam ist, muss man schauen, ob das in-memory schneller geht. Vermutlich nicht.

Rolf

--
sumpsi - posui - obstruxi