Affecter une variable par des requetes imbriquées ?
Résolu/Fermé
emrh
Messages postés
427
Date d'inscription
mardi 9 décembre 2014
Statut
Membre
Dernière intervention
9 avril 2024
-
7 déc. 2021 à 09:55
emrh Messages postés 427 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 9 avril 2024 - 8 déc. 2021 à 09:42
emrh Messages postés 427 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 9 avril 2024 - 8 déc. 2021 à 09:42
A voir également:
- Affecter une variable par des requetes imbriquées ?
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Affecter la valeur d'une cellule à une variable vba ✓ - Forum Bureautique
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
5 réponses
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
Ambassadeur
1 552
7 déc. 2021 à 10:38
7 déc. 2021 à 10:38
bonjour,
as-tu déjà étudié les jointures en SQL?
as-tu déjà étudié les jointures en SQL?
emrh
Messages postés
427
Date d'inscription
mardi 9 décembre 2014
Statut
Membre
Dernière intervention
9 avril 2024
20
7 déc. 2021 à 13:48
7 déc. 2021 à 13:48
Merci @yg_be
Je n'avais jamais eu besoin de ces fonctionnalités donc j'avais survolé
puis oublié ce chapitre... C'est bien moins usine à gaz que mes requêtes
imbriquées ! Je vais regarder ça de près..., je viendrai poster ici ce que j'aurai
écrit.
Que me conseilles-tu pour mettre le résultat des réponses trouvées
(quelques fois plusieurs lignes) dans la deuxième table dans une variable ?
En fait, j'aimerai pouvoir concaténer les réponses comme ça :
|designation1;prix1;quantites1|designation2;prix2;quantites2|designation3;prix3;quantites3...
Je suppose qu'il faut inclure la concaténation dans une boucle style foreach ou while,
mais je ne vois pas comment écrire ça...
Je n'avais jamais eu besoin de ces fonctionnalités donc j'avais survolé
puis oublié ce chapitre... C'est bien moins usine à gaz que mes requêtes
imbriquées ! Je vais regarder ça de près..., je viendrai poster ici ce que j'aurai
écrit.
Que me conseilles-tu pour mettre le résultat des réponses trouvées
(quelques fois plusieurs lignes) dans la deuxième table dans une variable ?
En fait, j'aimerai pouvoir concaténer les réponses comme ça :
|designation1;prix1;quantites1|designation2;prix2;quantites2|designation3;prix3;quantites3...
Je suppose qu'il faut inclure la concaténation dans une boucle style foreach ou while,
mais je ne vois pas comment écrire ça...
emrh
Messages postés
427
Date d'inscription
mardi 9 décembre 2014
Statut
Membre
Dernière intervention
9 avril 2024
20
7 déc. 2021 à 15:33
7 déc. 2021 à 15:33
Avt de faire du code PHP, j'essaie déjà de faire mes requêtes dans PhpMyAdmin mais ça ne fonctionne pas..
J'ai essayé dans plusieurs syntaxe la commande suivante :
J'ai essayé dans plusieurs syntaxe la commande suivante :
SELECT prestations.designation,compositions.prix, compositions.quantites FROM prestations, compositions WHERE prestations.id_prestation=compositions.id_prestation AND contrats.id_contrat=62
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
1 552
7 déc. 2021 à 17:38
7 déc. 2021 à 17:38
"ça ne fonctionne pas": peux-tu nous en dire plus?
emrh
Messages postés
427
Date d'inscription
mardi 9 décembre 2014
Statut
Membre
Dernière intervention
9 avril 2024
20
Modifié le 8 déc. 2021 à 09:22
Modifié le 8 déc. 2021 à 09:22
J'avais soit des messages d'erreur de syntaxe sql soit j'avais l'intégralité d'une table...
J'ai regardé ce tuto https://www.youtube.com/watch?v=umB_0eDOrp8&feature=youtu.be et appliqué la première jointure,
c'est à dire celle d'INNER JOIN et ça fonctionne... Enfin presque !
Voici mon code sql de test :
J'ai bien la totalité de la table compositions grace à * mais je
ne veux pas l'intégralité de prestations car prestations contient
'prix' qui est le prix proposé par défaut à l'utilisateur qui peut
être changé et qui est enregistré dans la table compositions
une fois le formulaire validé...
Comment faire pour ne récupérer QUE la prestations.designation
si son prestation.id_prestation = compositions.id_prestation ?
me donne :
MySQL a répondu : Documentation
#1066 - Table/alias: 'prestations' non unique
J'ai regardé ce tuto https://www.youtube.com/watch?v=umB_0eDOrp8&feature=youtu.be et appliqué la première jointure,
c'est à dire celle d'INNER JOIN et ça fonctionne... Enfin presque !
Voici mon code sql de test :
SELECT * FROM compositions INNER JOIN prestations ON prestations.id_prestation=compositions.id_prestation WHERE compositions.id_contrat=62
J'ai bien la totalité de la table compositions grace à * mais je
ne veux pas l'intégralité de prestations car prestations contient
'prix' qui est le prix proposé par défaut à l'utilisateur qui peut
être changé et qui est enregistré dans la table compositions
une fois le formulaire validé...
Comment faire pour ne récupérer QUE la prestations.designation
si son prestation.id_prestation = compositions.id_prestation ?
SELECT prestations.designation,compositions.quantites, compositions.prix FROM compositions, prestations
me donne :
MySQL a répondu : Documentation
#1066 - Table/alias: 'prestations' non unique
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
emrh
Messages postés
427
Date d'inscription
mardi 9 décembre 2014
Statut
Membre
Dernière intervention
9 avril 2024
20
8 déc. 2021 à 09:42
8 déc. 2021 à 09:42
Après une multitude d'essais :
Me donne :
Chambre côté Village (1 personne) 1 50.00
C'est exactement ce que je cherchais !
SELECT prestations.designation,compositions.quantites, compositions.prix FROM compositions INNER JOIN prestations ON prestations.id_prestation=compositions.id_prestation WHERE compositions.id_contrat=62
Me donne :
Chambre côté Village (1 personne) 1 50.00
C'est exactement ce que je cherchais !