Estoy trabajando en un proyecto de Symfony en el trabajo y estamos utilizando Lucene para nuestro motor de búsqueda. Estaba tratando de usar la base de datos en memoria de SQLite para pruebas unitarias (estamos usando MySQL) pero me encontré con algo.Ordenar por campo con SQLite
La parte del motor de búsqueda del proyecto utiliza la indexación de Lucene. Básicamente, lo consulta y obtiene una lista ordenada de identificadores, que puede usar para consultar su base de datos con una cláusula Where In(). El problema es que hay una cláusula ORDER BY Field (id, ...) en la consulta, que ordena el resultado en el mismo orden que los resultados devueltos por Lucene.
¿Hay alguna alternativa al campo ORDER BY usando SQLite? ¿O hay otra forma de ordenar los resultados de la misma manera que lo hace Lucene?
Gracias :)
Editar:
simplificado fuerza consulta es el siguiente:
SELECT i.* FROM item i
WHERE i.id IN(1, 2, 3, 4, 5)
ORDER BY FIELD(i.id, 5, 1, 3, 2, 4)
¿Puede aclarar con consultas de muestra? – Youssef
http://cakebaker.42dh.com/2008/06/10/order-by-field/ explica de qué trata esta sintaxis específica de MySQL. –
Esto parece una pregunta similar con una respuesta más simple: http://stackoverflow.com/questions/3303851/sqlite-and-custom-order-by – bmaupin