mango example batch_size alldocs all nosql couchdb mapreduce

nosql - example - pouchdb batch_size



¿Comodines en vistas con CouchDB? (2)

¿Es posible usar comodines en vistas en CouchDB? Por ejemplo, digamos que tengo una base de datos que tiene equipos, edades de jugadores, promedios de jugadores y sexo de jugadores. Sin embargo, es posible que las edades de los jugadores no se conozcan, ya que podrían ser de la República Dominicana o lo que sea. Entonces quiero usar una vista con una función de mapa que pueda aceptar no tener la edad del jugador. Si quiero obtener el jugador con el promedio más alto en un equipo, independientemente de su edad o con una edad específica, ¿cómo lo hago si quiero usar las teclas compuestas? Por ejemplo, digamos que mi función de emisión de mapas es algo así como:

emit([doc.team, doc.gender, doc.age], doc.average);

¿Qué debo hacer si deseo ingresar una clave para restringirla, y aún así tener en cuenta los jugadores que no tienen una edad ingresada, así que en lugar de:

http://127.0.0.1:5984/savings/_design/players/_view/average?key=["Yankees","male",8]

haciendo algo que incorpore un comodín como este para obtener los promedios independientemente de la edad:

http://127.0.0.1:5984/savings/_design/players/_view/average?key=["Yankees","male",*]

¿Es posible escribir una vista en CouchDB para hacer algo como esto? ¿O debo escribir varias vistas y procesarlas por separado?

Gracias,
Ben


El comodín no es posible, pero puede especificar la startkey y la endkey :

http://127.0.0.1:5984/savings/_design/players/_view/average?startkey=["Yankees","male",0]&endkey=["Yankees","male",999]


Puede especificar startkey y endkey y usar el "comodín" {} , un objeto vacío de JavaScript:

http://127.0.0.1:5984/savings/_design/players/_view/average?startkey=["Yankees","male",0]&endkey=["Yankees","male",{}]