Aide en postgreSQL
Résolu/Fermé
mr linux
Messages postés
11
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
7 novembre 2009
-
19 mai 2009 à 15:04
mr linux Messages postés 11 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 7 novembre 2009 - 25 mai 2009 à 22:38
mr linux Messages postés 11 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 7 novembre 2009 - 25 mai 2009 à 22:38
A voir également:
- Aide en postgreSQL
- Navicat postgresql - Télécharger - Gestion de données
- Sql manager for postgresql - Télécharger - Bases de données
- DBConvert for Access & PostgreSQL - Télécharger - Gestion de données
6 réponses
estofilo
Messages postés
9
Date d'inscription
samedi 23 mai 2009
Statut
Membre
Dernière intervention
24 mai 2009
8
24 mai 2009 à 22:44
24 mai 2009 à 22:44
Voyons voir si j'ai compris la nuance. Nouvelle version: on considère tous les produits achetés par des clients de Casablanca, mais on ne garde que ceux dont le nombre d'acheteurs DISTINCTS est égal au nombre total de clients de Casablanca (donc les produits qui ont été acheté par tous les clients de cette ville)
SELECT produit.numero_produit
FROM produit,commande,client,detail
WHERE produit.numero=detail.numero_produit
AND commande.numero_client=client.numero_client
AND detail.commande=commande.numero_commande
AND client.ville='casablanca'
GROUP BY produit.numero_produit
HAVING count(distinct client.numero_client) =(select count(*) from client where ville='casablanca')
SELECT produit.numero_produit
FROM produit,commande,client,detail
WHERE produit.numero=detail.numero_produit
AND commande.numero_client=client.numero_client
AND detail.commande=commande.numero_commande
AND client.ville='casablanca'
GROUP BY produit.numero_produit
HAVING count(distinct client.numero_client) =(select count(*) from client where ville='casablanca')
mr linux
Messages postés
11
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
7 novembre 2009
19 mai 2009 à 15:46
19 mai 2009 à 15:46
où êtes vous les amis??
j'ai vraiment besoin de votre aide.....
j'ai vraiment besoin de votre aide.....
estofilo
Messages postés
9
Date d'inscription
samedi 23 mai 2009
Statut
Membre
Dernière intervention
24 mai 2009
8
23 mai 2009 à 20:05
23 mai 2009 à 20:05
C'est une jointure classique multi-tables
SELECT produit.nom_du_produit
FROM produit,commande,client,detail
WHERE produit.numero=detail.numero_produit
AND commande.numero_client=client.numero_client
AND detail.commande=commande.numero_commande
AND client.ville='la ville que tu cherches'
SELECT produit.nom_du_produit
FROM produit,commande,client,detail
WHERE produit.numero=detail.numero_produit
AND commande.numero_client=client.numero_client
AND detail.commande=commande.numero_commande
AND client.ville='la ville que tu cherches'
mr linux
Messages postés
11
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
7 novembre 2009
24 mai 2009 à 00:33
24 mai 2009 à 00:33
merci estofilo pour l'aide.mais c'est pas ce que je cherche.
en fait la requête que je cherche doit me rendre les produits qui sont demandés par tous les clients de la ville casablanca alors que la requête que tu as proposée me donne les prodits demandés par les clients de casablanca.
j'espère que tu as constaté la différence.
et merci....
en fait la requête que je cherche doit me rendre les produits qui sont demandés par tous les clients de la ville casablanca alors que la requête que tu as proposée me donne les prodits demandés par les clients de casablanca.
j'espère que tu as constaté la différence.
et merci....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 331
24 mai 2009 à 01:27
24 mai 2009 à 01:27
C'est une division relationnelle. Ca se prend de plusieurs manières selon sur quoi on travaille et ça peut être très tordu.
Voilà quelque-chose qui devrait marcher dans ton cas, le principe est de sélectionner tous les produits commandés par le nombre de personne de Casablanca :
Voilà quelque-chose qui devrait marcher dans ton cas, le principe est de sélectionner tous les produits commandés par le nombre de personne de Casablanca :
SELECT npro FROM detail, commande WHERE produit = npro GROUP BY npro HAVING count(*)=(SELECT count(*) FROM client WHERE ville='Casablanca')
mr linux
Messages postés
11
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
7 novembre 2009
25 mai 2009 à 22:38
25 mai 2009 à 22:38
merci à vous Yoan et estofilo
les requêtes que vous avez proposées doivent resoudre le problème..merci bcp
et bonne continuation...
les requêtes que vous avez proposées doivent resoudre le problème..merci bcp
et bonne continuation...