firebase equivalente a sql donde in ()

Necesito una consulta de firebase que sea equivalente a esta consulta en SQL:

select * from your_table where id in (123, 345, 679) 

¿Cómo harías esta lógica en firebase?

Gracias,

Las consultas de Firebase no tienen un operador OR o IN . Por lo tanto, no puedes asignar fácilmente la consulta anterior a Firebase.

Una solución alternativa sería implementar una function que simplemente rote sobre los elementos:

 function loadThese(ids, callback) { var rows = []; while (ids.length > 0) { var id = ids.splice(0,1)[0]; refToTable.child(id).once('value', function(snapshot) { rows.push(snapshot.val()); }); } callback(rows); } 

Tenga en count que lo anterior probablemente sea recursivo, así que úselo como fuente de inspiración y no como código de copyr / pegar.

Otra (y probablemente mejor) forma de resolver el problema es averiguar por qué se seleccionan estas tres filas y por qué no otras. Estas filas probablemente tienen algo en común. Una vez que sepa qué tienen en común, puede modelar eso en la estructura de datos.

Actualización (20160408): para get una buena explicación de por qué lo anterior es mucho más rápido en Firebase de lo que cabría esperar, consulte esta respuesta .

  • Firebase y recuperación de elementos
  • Los types comodín generics no son compatibles
  • La interfaz de usuario de Firebase para almacenamiento con Kotlin produce un error
  • Android Firebase auth: class de descriptor de module local para com.google.android.gms.crash y com.google.firebase.auth no encontrado
  • Luchando por intentar get una image de la camera para cargarla en Firebase - java.lang.IllegalStateException: uri no debe ser nulo
  • ¿Cómo obtengo la identificación del documento de Firestre utilizando las classs de datos de kotlin?
  • Kotlin - ¿Cómo hacer onCompleteListener para get datos de Firestre?
  • ¿Cómo consultar el tipo de datos de reference Firebase Firestre?
  • firebase putfile en kotlin
  • ¿Cuál es la forma recomendada de deserializar un documento de Firestre que contiene una matriz?
  • Firebase AdMob lanza IncompatibleClassChangeError