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

SQL Procédural MySQL Discussion :

sélectionner les noms des colonnes


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Par défaut sélectionner les noms des colonnes
    Bonjour,

    Je me trouve dans une situation un peu... originale. C'est peut-être mon architecture qui est à revoir ? Bref, mon problème est le suivant :

    j'ai une table utilisateurs contenant pour chaque ligne :
    id, nom, mail, passwd, points de pénalité.
    une deuxième table réservation contenant :
    id, jour, puis une liste de colonnes dont les noms sont les id des utilisateurs, comme ça cette table contient les réservations de chacun des utilisateurs.
    Mon problème à présent, c'est que je voudrais pouvoir savoir à qui envoyer un mail i.e. qui sont les gens qui ont réservé un jour donné : pour ça il faut que je puisse accéder au nom des colonnes qui, pour le jour qui m'intéresse, ont une case différente de 0, mettons. Quelque chose comme ça :

    id | jour | 1 | 2 | 3 | 4
    23|2007-08-23 | 0 | 1 | 1 | 0
    24|2007-08-24 | 1 | 1 | 1 | 0
    25|2007-08-25 | 0 | 0 | 1 | 1

    il faudrait que je récupère, pour le jour 2007-08-23 les valeurs 2 et 3 et pour le jour 2007-08-25 les valeurs 3 et 4, par exemple... mais je dois dire que je suis un peu coincé (un peu novice en SQL, je dois bien le reconnaître)... Si quelqu'un a une idée... ?

    Merci beaucoup !!!

    Hugo

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Par défaut
    je suis parti pour sélectionner toute une journée, tester colonne par colonne qui est différent de 0 et stocker tout ça dans un tableau... si quelqu'un a une idée de solution plus élégante, je suis preneur, notamment sur la structure de mes tables.

    Hugo

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    Fait ta table 'reservations' plutôt comme ça :
    id_utilisateur
    jour

    En reprenant ton exemple, ça donnerait :

    id_utilisateur | jour
    2 |2007-08-23
    3 |2007-08-23
    1 |2007-08-24
    2 |2007-08-24
    3 |2007-08-24
    3 |2007-08-25
    4 |2007-08-25

    Aucun test à effectuer pour récupérer les réservations d'une date, et si tu ajoutes un utilisateur, pas besoin de modifier la structure de la table.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Par défaut
    Merci beaucoup !!!!
    Juste une question (je ne me rends pas compte) ça ne risque pas de gonfler trop ma taille de base ? Le truc va devoir tourner quelques années (à priori)...

    Hugo

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Une année = 365 jours
    10 réservations / jour
    pendant 10 ans

    représentent 36500 enreg., ce qui est négligeable.

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Par défaut
    Super !!! Merci beaucoup !
    De fait, en y réfléchissant, cette solution me simplifie carrément la vie !!!! Décidément, faut que j'apprenne comment on structure une BDD proprement...

    Encore un grand merci (c'est plutôt 30 résa par jour, mais j'imagine que ça restera négligeable... : on change pas d'ordre de grandeur).

    Hugo

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

Discussions similaires

  1. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  2. [JTABLE] Comment changer les noms des colonnes?
    Par uzumaki_naruto dans le forum Composants
    Réponses: 2
    Dernier message: 31/03/2007, 21h57
  3. Jtable : modifier les noms des colonnes
    Par Aerofly dans le forum Composants
    Réponses: 6
    Dernier message: 02/01/2007, 14h27
  4. [WD10] Afficher les noms des colonnes
    Par devalender dans le forum WinDev
    Réponses: 4
    Dernier message: 24/02/2006, 14h38
  5. [PostGreSQL] Récupérer les noms des colonnes
    Par Olivier14 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/02/2006, 18h51

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