A voir également:
- Requete sql sans doublon
- Supprimer doublon excel - Guide
- Alea entre bornes sans doublon - Forum Excel
- Requête sql date supérieure à ✓ - Forum Programmation
- Tirage au sort excel aléatoire sans doublon ✓ - Forum Excel
- Blob sql ✓ - Forum Webmastering
9 réponses
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
5 mars 2014 à 14:56
5 mars 2014 à 14:56
Sous quelle forme souhaites-tu obtenir le résultat ?
Peux-tu fournir un exemple et le résultat que tu souhaites obtenir à partir de cet exemple ?
Peux-tu fournir un exemple et le résultat que tu souhaites obtenir à partir de cet exemple ?
Bonjour,
Oui bien sur ^^
J'ai ceci :
LAVISSE - remise - 2014-02-15 - 4 €
LAVISSE - remise - 2014-02-23 - 8 €
LAVISSE - remise - 2014-02-28 - 7 €
LAVISSE - escompte - 2014-01-15 - 15 €
LAVISSE - escompte - 2014-01-15 - 15 €
LAVISSE - escompte - 2014-01-15 - 15 €
DUPONT - remise - 2014-02-02 - 2 €
DUPONT - remise - 2014-02-14 - 5 €
DUPONT - escompte - 2014-02-23 - 20 €
DUPONT - escompte - 2014-02-23 - 20 €
Je voudrais grouper les escomptes pour éviter qu'il me remette la ligne d'escompte à chaque fois qu'il y a une ligne de remise:
LAVISSE - remise - 2014-02-15 - 4 €
LAVISSE - remise - 2014-02-23 - 8 €
LAVISSE - remise - 2014-02-28 - 8 €
LAVISSE - escompte - 2014-01-15 - 15 €
DUPONT - remise - 2014-02-02 - 2 €
DUPONT - remise - 2014-02-14 - 5 €
DUPONT - escompte - 2014-02-23 - 20 €
Oui bien sur ^^
J'ai ceci :
LAVISSE - remise - 2014-02-15 - 4 €
LAVISSE - remise - 2014-02-23 - 8 €
LAVISSE - remise - 2014-02-28 - 7 €
LAVISSE - escompte - 2014-01-15 - 15 €
LAVISSE - escompte - 2014-01-15 - 15 €
LAVISSE - escompte - 2014-01-15 - 15 €
DUPONT - remise - 2014-02-02 - 2 €
DUPONT - remise - 2014-02-14 - 5 €
DUPONT - escompte - 2014-02-23 - 20 €
DUPONT - escompte - 2014-02-23 - 20 €
Je voudrais grouper les escomptes pour éviter qu'il me remette la ligne d'escompte à chaque fois qu'il y a une ligne de remise:
LAVISSE - remise - 2014-02-15 - 4 €
LAVISSE - remise - 2014-02-23 - 8 €
LAVISSE - remise - 2014-02-28 - 8 €
LAVISSE - escompte - 2014-01-15 - 15 €
DUPONT - remise - 2014-02-02 - 2 €
DUPONT - remise - 2014-02-14 - 5 €
DUPONT - escompte - 2014-02-23 - 20 €
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
5 mars 2014 à 15:34
5 mars 2014 à 15:34
Alors si j'ai bien compris, je te propose la requête suivante :
select id_client, type, date, montant
from client
inner join (
select id, 'remise' as type, date, montant from remises
union
select id, 'escompte' as type, date, montant from escomptes
) as data using(id)
select id_client, type, date, montant
from client
inner join (
select id, 'remise' as type, date, montant from remises
union
select id, 'escompte' as type, date, montant from escomptes
) as data using(id)
Merci pour ton aide mais ça ne fonctionne pas sniff.
mais c'est ma faute je ne t'ai pas dit que c'était du PHP.
De plus Je ne comprend pas le "AS DATA USING(id)" peux tu m'expliquer ?
et je ne vois pas ou est fait le lien entre client.id et remise.id_client et escompte.id_client
mais c'est ma faute je ne t'ai pas dit que c'était du PHP.
De plus Je ne comprend pas le "AS DATA USING(id)" peux tu m'expliquer ?
et je ne vois pas ou est fait le lien entre client.id et remise.id_client et escompte.id_client
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
5 mars 2014 à 17:23
5 mars 2014 à 17:23
"Ça ne fonctionne pas" : c'est à dire ?
Tu as dit que ton collègue qui s'occupe du SQL est en vacances, j'en ai conclu que tu avais besoin d'une requête SQL, non ? À toi de l'intégrer dans ton php :)
"AS DATA USING(id)" : signifie que je crée une sous-requête que je nomme "data", que j'utilise dans une jointure avec la table "client" à partir de la colonne "id".
"et je ne vois pas ou est fait le lien entre client.id et remise.id_client et escompte.id_client" : Ce lien se fait donc à partir de cette fameuse jointure. :)
Tu as dit que ton collègue qui s'occupe du SQL est en vacances, j'en ai conclu que tu avais besoin d'une requête SQL, non ? À toi de l'intégrer dans ton php :)
"AS DATA USING(id)" : signifie que je crée une sous-requête que je nomme "data", que j'utilise dans une jointure avec la table "client" à partir de la colonne "id".
"et je ne vois pas ou est fait le lien entre client.id et remise.id_client et escompte.id_client" : Ce lien se fait donc à partir de cette fameuse jointure. :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ma requête PDO me sort une erreur...
Mais merci pour les explications en effet moi, à part les requête de base avec jointure simple... mais je n'aime pas recopier bêtement d'où mes questions ^^...
Je regarde ça demain au boulot et je tiens au jus et merci
Mais merci pour les explications en effet moi, à part les requête de base avec jointure simple... mais je n'aime pas recopier bêtement d'où mes questions ^^...
Je regarde ça demain au boulot et je tiens au jus et merci
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
5 mars 2014 à 21:03
5 mars 2014 à 21:03
Salut,
Dans la structure de table que tu as cité, tu ne mentionnes à aucun moment la présence de la colonne "date", alors que dans les exemple la date existe ?!
Peux tu réecrire la structure des tables sous ce format :
Nom de la Table (id, colonne_1, colonne_2, ..., #colonne_i)
Dans la structure de table que tu as cité, tu ne mentionnes à aucun moment la présence de la colonne "date", alors que dans les exemple la date existe ?!
Peux tu réecrire la structure des tables sous ce format :
Nom de la Table (id, colonne_1, colonne_2, ..., #colonne_i)
Salut,
Oui je n'ai pas mis les vrais tables car j'aimerai comprendre et éviter de "pomper" vulgairement. (flokocha désolé si je t'ai fait bosser pour rien mais ta requête sera similaire a ce que je veux faire).
Les vrais tables se nomment : vendeurs, remises et escomptes
dans vendeurs : je n'ai besoin que du numéro de région du vendeur et surtout je ne peux pas la modifier
vendeurs (id,matricule_vendeur, region_vendeur)
remise(id, #matricule_vendeur, date, type, px_reel, px_vendu)
escompte(id, #matricule_vendeur, date, type, montant)
Encore merci pour votre aide
Oui je n'ai pas mis les vrais tables car j'aimerai comprendre et éviter de "pomper" vulgairement. (flokocha désolé si je t'ai fait bosser pour rien mais ta requête sera similaire a ce que je veux faire).
Les vrais tables se nomment : vendeurs, remises et escomptes
dans vendeurs : je n'ai besoin que du numéro de région du vendeur et surtout je ne peux pas la modifier
vendeurs (id,matricule_vendeur, region_vendeur)
remise(id, #matricule_vendeur, date, type, px_reel, px_vendu)
escompte(id, #matricule_vendeur, date, type, montant)
Encore merci pour votre aide
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
5 mars 2014 à 21:47
5 mars 2014 à 21:47
Ok, c'est très différent de la première structure !
Et est ce que les remises et escomptes ne dépendent pas d'un produit ?
Quelle est l'information que tu recherches a extraire ? les remises et les escomptes de chaque client ?
Et est ce que les remises et escomptes ne dépendent pas d'un produit ?
Quelle est l'information que tu recherches a extraire ? les remises et les escomptes de chaque client ?
Non pas du tout je veux juste afficher les résultats comme ceci :
région - matricule - remise - 2014-02-02 - px_vendu - px_réel
région - matricule - remise - 2014-02-14 - px_vendu - px_réel
région - matricule - escompte - 2014-02-23 - montant
Trier par matricule vendeur et date
Bien sur il peut y avoir 2 escomptes par jour pour le même vendeur mais le soucis c'est que si j'ai 3 remises dans le mois pour les même vendeurs j'aurais tout les escomptes triplés...
région - matricule - remise - 2014-02-02 - px_vendu - px_réel
région - matricule - remise - 2014-02-14 - px_vendu - px_réel
région - matricule - escompte - 2014-02-23 - montant
Trier par matricule vendeur et date
Bien sur il peut y avoir 2 escomptes par jour pour le même vendeur mais le soucis c'est que si j'ai 3 remises dans le mois pour les même vendeurs j'aurais tout les escomptes triplés...