Auftrag nach Feld mit SQLite

Ich arbeite gerade an einem Symfony-Projekt und wir verwenden Lucene für unsere Suchmaschine. Ich habe versucht, die SQLite-In-Memory-Datenbank für Komponententests zu verwenden (wir verwenden MySQL), bin aber auf etwas gestoßen.

Der Suchmaschinenteil des Projekts verwendet die Lucene-Indizierung. Grundsätzlich fragen Sie es ab und Sie erhalten eine geordnete Liste von IDs, mit denen Sie Ihre Datenbank mit einer Where In () -Klausel abfragen können. Das Problem besteht darin, dass die Abfrage eine ORDER BY Field (id, ...) -Klausel enthält, die das Ergebnis in derselben Reihenfolge wie die von Lucene zurückgegebenen Ergebnisse anordnet.

Gibt es eine Alternative zu ORDER BY Field mit SQLite? Oder gibt es eine andere Möglichkeit, die Ergebnisse so zu ordnen, wie es Lucene tut?

Vielen Dank :

Bearbeiten

ine vereinfachte Abfrage könnte folgendermaßen aussehen:

SELECT i.* FROM item i
WHERE i.id IN(1, 2, 3, 4, 5)
ORDER BY FIELD(i.id, 5, 1, 3, 2, 4)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage