IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NoSQL Discussion :

[MongoDb] Faire une requête dans un object imbriqué


Sujet :

NoSQL

  1. #1
    Membre averti Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 064
    Points : 420
    Points
    420
    Par défaut [MongoDb] Faire une requête dans un object imbriqué
    Bonjour @ tous,

    Voici ma structure de données:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    { 
        "_id" : ObjectId("597ec3a2b42c4c28d41879e1"), 
        "id" : "uplink-73-efbf", 
        "device_properties" : {
            "appeui" : "4883c7df30040000", 
            "deveui" : "4883c7df300411a4", 
            "external_id" : "FW 1.4 / HW 2.3"
        }, 
        ...
    J'aimerais supprimer tous les device_properties.deveui="4883c7df300411a4"
    Mais je suis obligé de mettre la totalité des sous propriétés pour que ça fonctionne
    OK :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db.loramessages.remove({ "device_properties" : { "appeui" : "4883c7df30040000",  "deveui" : "4883c7df300412a7", "external_id" : "FW 1.4 / HW 2.3"}})
    KO :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db.loramessages.remove({ "device_properties" : { "deveui" : "4883c7df300412a7"}})
    Et pour aller plus loin, je n'arrive pas à faire un "Like". Ceci ne fonctionne pas (j'ai essayé plusieurs syntaxes trouvées sur le net... /, /.$, ..
    KO :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db.loramessages.remove({ "device_properties" : { "deveui" : /^412a7/}})
    Pouvez vous m'éclaircir ?

    Merci d'avance.
    David.

  2. #2
    Expert Oracle confirmé

    Homme Profil pro
    Consultant Big Data
    Inscrit en
    Mars 2003
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Consultant Big Data
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2003
    Messages : 448
    Points : 926
    Points
    926
    Par défaut
    Bonjour,

    Je me suis fait le jeu de données suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    use dacid
     
    db.loramessages.insertOne ({id:'uplink-73-efbf', device_properties:{appeui:'4883c7df30040000', deveui:'4883c7df300412a7', external_id:'FW 1.4 / HW 2.3'}})
    db.loramessages.insertOne ({id:'uplink-74-efbf', device_properties:{appeui:'4883c7df30049999', deveui:'4883c7df300412a7', external_id:'FW 1.4 / HW 2.4'}})

    Pour supprimer les documents dont le champ device_properties.deveui="4883c7df300411a4", il faut utiliser la syntaxe suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db.loramessages.remove ({'device_properties.deveui':'4883c7df300412a7'})

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/01/2009, 11h41
  2. Réponses: 6
    Dernier message: 14/11/2008, 19h48
  3. Comment faire une requête SQL dans un datatable
    Par Passepoil dans le forum VB.NET
    Réponses: 2
    Dernier message: 05/02/2007, 20h24
  4. Faire une requête dans un champ
    Par alleramiens dans le forum Requêtes
    Réponses: 6
    Dernier message: 28/01/2006, 18h30
  5. [Requête] Faire une requête imbriquée?
    Par sekiryou dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/01/2004, 22h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo