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

PHP & Base de données Discussion :

Requête PostgreSql de comparaison [PostgreSQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Requête PostgreSql de comparaison
    Bonjour,

    Dans le cadre de la création d'un site internet, j'ai besoin d'effectuer une requête mais j'ai du mal à la réaliser.

    J'ai essayé avec plusieurs requête imbriquées mais je n'arrive jamais au résultat.

    Je vous donnes mes tables :

    region (id, nom).

    pomme (id, nom, type, provenance).

    article (id, poids, prixht, pomme).

    client (id, nom, age, region).

    achat (id, article, client, dateachat, quantite, remise).

    Et la requête est la suivante :

    Lister, pour chaque client, la pomme la moins cher de 150g disponible dans la region.

    Merci d'avance

    Zmaster

  2. #2
    Membre confirmé
    Avatar de tse_jc
    Homme Profil pro
    Data Solutions
    Inscrit en
    Août 2010
    Messages
    287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Data Solutions
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2010
    Messages : 287
    Points : 597
    Points
    597
    Billets dans le blog
    4
    Par défaut
    Bonjour,

    Avant de pouvoir effectuer cette requête simplement, il faut revoir votre modèle de données sérieusement:

    1) Dans la table: client (id, nom, age, region),
    la colonne "region" correspond-elle au nom de la région ou à l'id de la région? Si vous avez opté pour le nom, sachez qu'il vous faut utiliser l'id ici (et sans discuter de la pertinence de votre modèle).

    2) Dans les tables: pomme (id, nom, type, provenance) et article (id, poids, prixht, pomme)
    votre colonne "pomme" représente l'id pomme? un booléen (vrai/faux) pour dire si l'article est une pomme? Comment ferez-vous lorsque vous aurez plusieurs fruits à la vente? vous comptez rajouter autant de colonnes que vous avez de fruits différents?
    Actuellement vous n'avez pas exprimé dans votre modèle la dépendance fonctionnelle existant entre un fruit et un article.

    Je vous suggère de faire un post dans le forum consacré à la modélisation de données, vos données y gagneront en qualité, et il deviendra aisé de les requêter en fonction de vos besoins d'exploitation.

    Jc.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Merci pour votre réponse, je vais vous apporter quelques explications supplémentaires.

    La colonne région correspond à l'id dans la table région.
    Et de même pour la colonne pomme qui donne une dépendance entre la table pomme et la table article.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    J'ai recrée le sujet dans la rubrique PostgreSql !

    Merci

  5. #5
    Membre confirmé
    Avatar de tse_jc
    Homme Profil pro
    Data Solutions
    Inscrit en
    Août 2010
    Messages
    287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Data Solutions
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2010
    Messages : 287
    Points : 597
    Points
    597
    Billets dans le blog
    4
    Par défaut
    Bonjour,

    Je suppose également que la colonne region.id=pomme.provenance ? c'est-à-dire que la colonne provenance représente une id de région? Vous devriez avoir une convention d'écriture car sinon on s'y perds.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Oui c'est le cas.

    J'ai un diagramme de classe mais j'ai décrit de façon un peu trop rapide les tables, je m'en excuse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [1.x] requête basique de comparaison, (champ de formulaire)
    Par Ontolingua dans le forum Symfony
    Réponses: 3
    Dernier message: 09/09/2010, 12h14
  2. Réponses: 0
    Dernier message: 23/09/2009, 17h14
  3. Problème requête avec plusieurs comparaisons.
    Par fred61 dans le forum Requêtes
    Réponses: 2
    Dernier message: 16/07/2009, 13h24
  4. Réponses: 2
    Dernier message: 30/05/2008, 22h37
  5. Date+delai dans une requête PostGresql
    Par bobic dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 12/03/2007, 12h11

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