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 :

joindre et afficher 2 tables avec mongodb


Sujet :

NoSQL

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2013
    Messages : 95
    Points : 41
    Points
    41
    Par défaut joindre et afficher 2 tables avec mongodb
    Bonjour j'essai de joindre deux tables afin d'afficher le nom, prenom et adresse du client.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    db.Adresse.insert(
    	[{
    		Numero: 13,				// id: 561389265589912403e9e58d
    		Rue: "Street",
    		CP: 1234,
    		Ville: "Springfield"	
    	},
    	{
    		Numero: 154,			// id: 561389265589912403e9e58e
    		Rue: "De La Gare",
    		CP: 4567,
    		Ville: "Nirvana"
    	},
    	{
    		Numero: 1,				// id: 561389265589912403e9e58f
    		Rue: "Lucas",
    		CP: 1000,
    		Ville: "Tatooine"
    	},
    	{
    		Numero: 67,				// id: 561389265589912403e9e590
    		Rue: "De La Loi",
    		CP: 15009,
    		Ville: "Arkham"
    	}]
    );
     
    db.Client.insert(
    	[{
    		Nom: "Cobain",
    		Prenom: "Kurt",
    		Adresses:["561389265589912403e9e58e"] 
    	},
    	{
    		Nom: "Reznor",
    		Prenom: "Trent",
    		Adresses:["561389265589912403e9e58d","561389265589912403e9e590"]
    	},
    	{
    		Nom: "Cavalera",
    		Prenom: "Max",
    		Adresses:["561389265589912403e9e58f"]
    	},
    	{
    		Nom: "Love",
    		Prenom: "Courtney",
    		Adresses:["561389265589912403e9e58e"]
    	}]
    );
    J'ai ce code ci mais il ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    db.Client.find().forEach(
    	function(dataClient){
    		// dataClient.Client = db.Client.findOne({"_id": dataClient.Client});
    		var adresses = db.Adresse.find({"_id": dataClient._id}).toArray();
    		print(dataClient.Nom + " " + dataClient.Prenom);
    		forEach(var adresse : adresses){
    			print(adresse);
    		}
    	}
    );


    Comment faire pour afficher ces données ? Je début en noSQL.

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2015
    Messages : 3
    Points : 8
    Points
    8
    Par défaut
    Salut,

    Je réponds pas à ta question mais pourquoi 2 collections dans mongo ? Là on a l'impression que tu utilises une base NoSQL pour finalement faire du SQL côté code en faisant des "jointures" à la main. Attention d'utiliser les bons outils pour les bons use cases Sinon, stocke directement l'adresse comme un champ du client, ne passe pas par une seconde collection.

  3. #3
    Membre éprouvé
    Avatar de landry161
    Homme Profil pro
    C#,PHP,MySQL,Android...
    Inscrit en
    Juillet 2010
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : C#,PHP,MySQL,Android...

    Informations forums :
    Inscription : Juillet 2010
    Messages : 423
    Points : 1 059
    Points
    1 059
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Megalith Voir le message
    Salut,

    Je réponds pas à ta question mais pourquoi 2 collections dans mongo ? Là on a l'impression que tu utilises une base NoSQL pour finalement faire du SQL côté code en faisant des "jointures" à la main. Attention d'utiliser les bons outils pour les bons use cases Sinon, stocke directement l'adresse comme un champ du client, ne passe pas par une seconde collection.
    Ouais

Discussions similaires

  1. Afficher une liste dans un table avec radio
    Par jeedev dans le forum JSF
    Réponses: 3
    Dernier message: 22/08/2008, 16h48
  2. afficher une table dans le datagrid avec Access
    Par princesse07 dans le forum C#
    Réponses: 4
    Dernier message: 10/05/2008, 02h01
  3. Réponses: 6
    Dernier message: 19/05/2006, 14h22
  4. Afficher tous les champs d'une table avec dbexpress et MySQL
    Par LHT dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/06/2004, 17h11
  5. Réponses: 4
    Dernier message: 31/05/2004, 12h26

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