Ich baue eine MySQL-Abfrage für eine Suchfunktion, jetzt möchte ich das Ergebnis in einer bestimmten Weise mit einem Array von IDs bestellen.MYSQL Order by Field oder Find_in_set ohne IN()
Ich habe in der Lage, dies zu tun, indem sie ein Stück MYSQL ähnlich wie dies mit:
SELECT id, name
FROM mytable
WHERE id IN (77, 3, 123, 1)
ORDER BY FIELD(id, 77, 3, 123, 1)
Aber ich frage mich, ob es zu Order by FIELD
oder durch FIND_IN_SET
möglich ist, ohne dass die IN()
innerhalb der SELECT-Abfrage einstellen .
Ich will nicht die IN() Anweisung verwenden, weil ich auch Ergebnisse erwarten, die nicht in der Anordnung von
der ID sindHoffentlich kann mir jemand in die richtige Richtung schieben,
Danke Voraus,
Sie sollten "UNION ALL" verwenden, da die beiden Selects definitiv einen leeren Schnittpunkt haben. –
Die erste Methode funktionierte am besten für mich, sie war nur ein paar Millisekunden schneller als mit der NOT IN Abfrage, aber alles zählt: P Vielen Dank für Ihre Antwort und Erklärung! – Lennart