Je n'arrive pas à obtenir les bons résultats dans mon système de coordonnées. Pour expliquer mon système, j'ai cette base de données simple qui a des colonnes x_axis, y_axis et name. Je n'ai pas besoin de toutes les données, j'ai juste besoin d'en afficher une partie. Par exemple, j'ai un système de coordonnées qui a 10:10 (signifiant de x_axis -10 à 10 et de y_axis -10 à 10) et je veux afficher seulement 49 coordonnées. Dans requête SQL je peux le faire quelque chose comme ceci: "select * from coordonnées où X_AXIS> = -3 et X_AXIS < = 3 et Y_AXIS> = -3 Y_AXIS < = 3"Problèmes avec deux plages de touches dans couchdb
J'ai essayé cette fonction, mais sans succès :
"by_range": {
"map": "function(doc) { emit([doc.x_axis, doc.y_axis], doc) }"
}
by_range startkey = [- 3, -3] & endkey = [3,3]
Je suis un mauvais résultats:
-3X-3 -3x- 2 -3x-1 -3x0 -3x1 -3x2 -3x3 < - ne devrait pas afficher cette partie -> -3x4 -3x5 -3x6 -3x7 -3x8 -3x9 -3x10 < - fin ne doit pas afficher cette partie -> ..... jusqu'à 3x3
pour vous donner une meilleure compréhension de mon projet est ici la capture d'écran de ce que je veux être:
Salut anduk, Tout d'abord, permettez-moi de vous remercier pour votre réponse rapide. Je vois votre point mais le problème est que la condition que vous faites n'est pas dynamique ce qui signifie qu'elle s'applique seulement à x/y -3 à 3. Ces nombres (-3 et 3) dépendront de la partie sélectionnée des coordonnées. Existe-t-il un moyen de transmettre un paramètre de requête dans ces vues? alors ça va devenir dynamique. quelque chose comme la fonction (doc, req)? Merci encore! – Duasto
J'ai mis à jour mon message - j'espère que cela devrait le résoudre. – andyuk