Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme construction de requete

Sujet résolu
    19 avril 2019 à 18:31:04

    Bonjour, je viens à vous car je suis en train de créer un tableau en JAVA ou a chaque clic de cellule, cela me renvoie un booleen dans ma base de donnée. Or cela me fais un enregistrement pour chaque clic et je souhaite reunir selon l'id et la date je vous met une photo pour que vous compreniez mieux. 

    Comme on peut voir on a sur l'id 44 et 48, une date similaire et un id user similaire je souhaite reunir en un enregistrement pour que le 1 de la ligne 48 aparaisse sur le meme enregistrement ou un autre booleen sera deja rentrer. J'ai essayé avec un group by mais cela m'enleve un des booleen du coup. Merci d'avance pour votre aide.

    • Partager sur Facebook
    • Partager sur Twitter
      20 avril 2019 à 0:16:59

      Bonjour,

      Désolé mais je n'ai rien compris ... je pense que tu as tellement la tête dans ton projet que c'est limpide pour toi, mais je pense que c'est compliqué pour quelqu'un en dehors ...

      Peux-tu nous donner la structure de la table qui permet d'afficher ce tableau, et essayer de reformuler ta question, peut-être avec un exemple de données et le résultat attendu ?

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        21 avril 2019 à 11:11:40

        Oui pardon, alors j'ai une table utilisateur que je relis avec ma table planning grace a son id. Dans mon projet, j'ai donc un planning que l'utilisateur remplit. Le huit, neuf, dix ... correspondent à des heures. S'il clique sur la case correspondante a 8h cela vient dans le 8 et prend au passage la date (colonne correspondante). Il se peut donc que sur un journée il clic sur 8h 9h et 10h. Et c'est a ce moment qu'il ne me prend qu'un enregistrement. 

        Imaginons j'ai l'id 70 et j'ai cliqué sur 8, 9, et 10 , je souhaite que sur mon enregistrement il me reunisse a la date du lundi 15 mes booleen (1) sur huit, neuf, et dix et non pas sur 3 enregistrements. 

        Est-ce plus clair ? :/

        • Partager sur Facebook
        • Partager sur Twitter
          22 avril 2019 à 19:33:11

          Personne pour m'aider ?
          • Partager sur Facebook
          • Partager sur Twitter
            23 avril 2019 à 14:38:59

            Disons que je n'arrive tellement pas à comprendre comment tu es organisé que je ne sais pas comment t'aider ...

            J'ai l'impression qu'il y a un problème de conception ... ces colonnes huit, neuf, dix, etc. ... ça sent pas bon ...

            Que doit renseigner exactement ton utilisateur ? Les heures auxquelles il a travaillé sur une journée ?

            • Partager sur Facebook
            • Partager sur Twitter
            Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
              23 avril 2019 à 19:26:14

              Oui ses heures de disponibilité, la sur l'image la case coché vient dans la base de donnée en tant dates du lundi 22 et un booleen à 1 sur le champ dix. 

              Mais si il y a plusieurs cases cochés cela me fais plusieurs enregistrements. Et moi je veux reunir mes enregistrements par exemple du lundi 22 sur le meme id. 

              -
              Edité par jprtt89 23 avril 2019 à 19:29:25

              • Partager sur Facebook
              • Partager sur Twitter
                24 avril 2019 à 8:57:35

                Quelle est la structure de la table en question ?

                Réunir les enregistrements sur le même id va à l'encontre de la première forme normale ...

                • Partager sur Facebook
                • Partager sur Twitter
                Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                  18 mai 2019 à 12:13:09

                  J'ai la clé primaire, et ensuite ce ne sont que des booleens 

                  • Partager sur Facebook
                  • Partager sur Twitter
                    18 mai 2019 à 13:45:50

                    Benzouye a écrit:

                    il y a un problème de conception ... ces colonnes huit, neuf, dix, etc. ... ça sent pas bon ...

                    Benzouye a écrit:

                    Réunir les enregistrements sur le même id va à l'encontre de la première forme normale ...

                    Décris plus ton projet ... Les tables impliquées avec leur structure et contraintes, le fonctionnement attendu, etc.
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                      18 mai 2019 à 14:58:47

                      C'est un planning permettant à l'utilisateur de renseignée ses heures de disponibilité. Il peut donc etre dispo de 8h à 9h et le soir de 17h a 20h. 

                      Cette table planning est donc relié a une table utilisateur grâce à a son id. Dans mon projet je fais une insertion sur la table planning à chaque clic de cellule. Le problème est que je veux réunir selon son id et la date les heures ou il est disponible afin de savoir en un enregistrement que le lundi 15 il est dispo de 8 a 9h et de 17 a 20h imaginons et pas sur 3 enregistrements .

                      • Partager sur Facebook
                      • Partager sur Twitter
                        18 mai 2019 à 16:45:48

                        jprtt89 a écrit:

                        Et pas sur 3 enregistrements .

                        C'est la que tu te trompes ... en tout cas en terme de modélisation de base de données relationnelle. 

                        Il te faudrait un modèle en trois tables :

                        utilisateur ( id [pk], nom, etc. )

                        creneau ( id [pk], horaire )

                        disponibilite ( id_utilisateur [pk][fk], id_creneau [pk][fk], date_dispo [pk] )

                        Dans la table creneau tu stockes tous les créneaux possibles.

                        Dans la table disponibilite tu enregistres tous les couples utilisateur / créneau / date, un par enregistrement.

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                          18 mai 2019 à 20:16:07

                          Mais du coup sur la table créneau j'aurais toujours un seul booléen par enregistrement ce qui m'en fera énormément ?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            18 mai 2019 à 23:32:32

                            Oui, mais ce n'est pas un problème. Ta base est ainsi normalisée et les index de clé primaire assureront les performances nécessaires,  même avec des millions d'enregistrements...

                            A toi de gérer correctement  l'affichage de ton formulaire pour faire les saisies ...

                            • Partager sur Facebook
                            • Partager sur Twitter
                            Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                              19 mai 2019 à 10:23:09

                              Très bien je te remercie vraiment !!
                              • Partager sur Facebook
                              • Partager sur Twitter

                              Probleme construction de requete

                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                              • Editeur
                              • Markdown