Menu

Requête avec deux tables

Messages postés
105
Date d'inscription
samedi 21 juin 2008
Dernière intervention
10 janvier 2019
- - Dernière réponse : jee pee
Messages postés
24083
Date d'inscription
mercredi 2 mai 2007
Dernière intervention
10 janvier 2019
- 10 janv. 2019 à 16:31
Bonjour mes amis,

Pourriez-vous SVP m'aider à trouver le résultat sur la photo ci-dessous ?


Merci d'avance!

Configuration: Windows / Chrome 65.0.3325.181
Afficher la suite 

Votre réponse

1 réponse

Messages postés
24083
Date d'inscription
mercredi 2 mai 2007
Dernière intervention
10 janvier 2019
9725
0
Merci
Bonjour,

Il y a un piège ;-)

Et tu nous proposes quoi toi comme solution ? Tu peux commencer par déjà plus simple, la requête qui donne juste la première ligne du résultat. Ça c'est une requête de base en sql, la jointure de 2 tables.

hakim_fth
Messages postés
105
Date d'inscription
samedi 21 juin 2008
Dernière intervention
10 janvier 2019
-
Bonjour jee pee,

Merci pour ton retour. voilà ce que j'ai pu faire :)

SELECT articles.code_article,articles.designation, 
entrees.code_article, SUM(entrees.quantite) as quantite 
FROM articles,entrees 
where articles.code_article=entrees.code_article 
group by articles.designation
jee pee
Messages postés
24083
Date d'inscription
mercredi 2 mai 2007
Dernière intervention
10 janvier 2019
9725 -
Elle fonctionne cette requête ? (je ne suis pas spécialiste mysql)

Pour réaliser ce que tu souhaites, il va falloir que tu changes ta façon de faire des jointures dans mysql. Il faut utiliser JOIN et pas un FROM TAB1, TAB2. Le JOIN est une syntaxe permettant plus de choses (notamment ramener les lignes de la table1 n'ayant pas de correspondance dans la table 2).

Peux tu bosser sur ce sujet, dans un premier temps juste la requête qui ramène une ligne ?

J'ai des questions sur ton modèle de données :
- il est donné avec l'exercice ou c'est toi qui l'a établi ?
- car pourquoi dans la table entrées avoir la désignation de l'article, cette zone devrait être uniquement présente dans la table article
- et dans ta requête alors le group by s'effectuerait sur le code_article
- enfin on peut douter dans la table article de l'utilité d'avoir un id et un code_article, généralement on aura le code_article seulement, en clé primaire
hakim_fth
Messages postés
105
Date d'inscription
samedi 21 juin 2008
Dernière intervention
10 janvier 2019
-
Merci infiniment jee pee, pour ces remarques. En fait je suis débutant et j'essaye de développer une application de gestion de stock pour moi même, je prends en considération ces remarques. Merci encore
jee pee
Messages postés
24083
Date d'inscription
mercredi 2 mai 2007
Dernière intervention
10 janvier 2019
9725 > hakim_fth
Messages postés
105
Date d'inscription
samedi 21 juin 2008
Dernière intervention
10 janvier 2019
-
Je te conseille de lire : https://www.commentcamarche.net/faq/34631-mysql-quelle-jointure-choisir qui est une très bonne explication.

J'ai toujours utilisé Oracle pas mysql et pour les jointures externes (union) il y a une syntaxe propriétaire.

Je me suis créé une base mysql, la première, création des tables, création des enregistrements. Ta requête fonctionne, mais bien sur ne ramène qu'une ligne. Et donc avec la doc du lien ci-dessus, j'ai modifié la requête avec un JOIN pour obtenir les 3 lignes de résultat.

Avances-tu de ton coté ?
Commenter la réponse de jee pee