sql >> Base de Datos >  >> RDS >> PostgreSQL

Ruby on Rails:¿Hay alguna forma de extraer elementos de la base de datos y devolverlos en un orden específico?

Puede hacer que la base de datos realice la clasificación y evitar múltiples index llamadas, solo hay que recordar que un SQL ORDER BY ordena por una expresión , no una columna :

whens = item_ids.collect.with_index { |id, i| "when #{id} then #{i}" }.join(' ')
items = Item.where(:id => item_ids).order("case id #{whens} end")