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

Langage SQL Discussion :

Classique Shadocko. Besoin de votre avis svp.


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Classique Shadocko. Besoin de votre avis svp.
    J'ai un petit problème que j'ai résolu. Supposant que la partie conception est correcte ... j'aimerai avoir votre avis sur 7 requêtes SQL dont certaines sont réalisées avec deux solutions différentes, enfin vous pouvez me dire svp par exemple si :
    - "ça va !! "
    ou
    - " Ça ne va pas du tout !! "
    ou
    - "On n'est pas sure ... "

    Et si vous aimeriez bien un amélioration serait toujours la bienvenue.

    Voila en quoi consiste :

    Produire le diagramme relationnel d’une ville de Shadocks. Tous les Shadocks vivent dans des nids.

    Tous les nids sont posés sur une branche nommée (comportant elle même des branches) d'un même arbre. Les Shadocks étant loufoques, les nids peuvent avoir une infinité de caractéristiques qui peuvent avoir une infinité de valeurs.
    Par exemple:
    -*‐ forme: ronde, carrée, hexagonale …
    -*‐ couleur: rouge, vert, …
    -*‐ attributs: une ou plusieurs fenêtres, portes, toits,ailes...
    -*‐ etc… Dans chaque nid peuvent vivre plusieurs Shadocks.

    Il existe une règle qui stipule que pour qu'un Shadock puisse sortir vivre dans un autre nid, il faut que tous les Shadocks qui ont emménagé après lui dans le nid actuel, soient partis vivre dans un autre nid. C'est la politesse Shadockienne.

    Le diagramme MLD (après être passer par MCD sous WinDesign, je ne prends pas en compte l'association réflexive entre l'entité branche et elle même) est:
    Nom : Nouvelle image bitmap.jpg
Affichages : 144
Taille : 25,9 Ko

    Voici les requêtes avec les solutions que je propose:

    --Liste de tous les nids posés sur l’arbre.
    -*‐ Liste des nids qui ont plus de 5 Shadocks.

    SOLUTION 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
              SELECT IDNID FROM NID 
                WHERE 
             (SELECT COUNT(IDSHADOCK) FROM SHADOCK GROUP BY IDNID ) >5;
    SOLUTION 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                SELECT IDNID FROM NID NATURAL JOIN (SELECT IDSHADOCK 
                                                                                       FROM SHADOCK
                                                                                        GROUP BY IDSHADOK
                                                                                         HAVING COUNT(*) >=6)
    -*‐ Liste de tous les Shadocks qui peuvent emménager dans un autre nid.

    SOLUTION 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
                 SELECT IDSHADOCK FROM  VIVRE
                 WHERE 
                 (SELECT DATEAMENAGMENT FROM VIVRE) 
                IN
                 (SELECT MAX(DATEAMENAGMENT) FROM VIVRE GROUP BY IDNID);
    SOLUTION 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                SELECT IDSHADOCK  FROM SHADOCK
                 NATURAL JOIN 
                 (SELECT IDSHADOCK 
                   FROM VIVRE 
                   ORDER BY DATEAMENAGEMENT DESC
                LIMIT 1 );
    -*‐ Liste des nids qui sont en forme de casserole mais pas rouge.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT IDNID 
       FROM NID 
       WHERE FORMENID LIKE  ”CASSEROLE”
       AND COULEURNID != “ROUGE”;
    -*‐ Liste des branches qui supportent d’autres branches et la liste des branches qui ne supportent pas de branche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT IDBRANCHE FROM BRANCHE B1 
                                            OUTER JOIN BRANCHE B2
                                            ON B1.IDBRANCHE=B2.IDBRANCHE;
    -*‐ Liste des nid que supporte la branche “GaBuZoMe”.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT IDNID FROM NID
                                JOIN BRANCHE ON NID.IDBRANCHE=BRANCHE.IDBRANCHE
    WHERE NOMBRANCHE LIKE “GaBuZoMe”;

    -*‐La liste des nids qui ont toutes les caractéristiques possibles
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT IDNID FROM NID WHERE FORMENID IS NOT NULL
     
                                                    AND COULEURNID IS NOT NULL
     
                                                    AND COMPLEMENTNID IS NOT NULL;
    ou bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT IDNID FROM NID WHERE (FORMENID ,COULEURNID,COMPLEMENTNID)
                                                                  IS NOT NULL;
    Je tiens à vous remercier pour votre lecture, en attendant votre avis, je vous souhaite tous un agréable weekend .

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 115
    Points : 28 480
    Points
    28 480
    Par défaut
    Une réponse rapide bon, pas bon...

    --Liste de tous les nids posés sur l’arbre.
    C'est bon

    -*‐ Liste des nids qui ont plus de 5 Shadocks.
    C'est pas bon

    -*‐ Liste de tous les Shadocks qui peuvent emménager dans un autre nid.
    SOLUTION 1
    C'est pas bon

    SOLUTION 2
    C'est pas bon

    -*‐ Liste des nids qui sont en forme de casserole mais pas rouge.
    C'est bon

    -*‐ Liste des branches qui supportent d’autres branches et la liste des branches qui ne supportent pas de branche.
    C'est pas bon

    -*‐ Liste des nid que supporte la branche “GaBuZoMe”.
    C'est bon

    -*‐La liste des nids qui ont toutes les caractéristiques possibles
    1. C'est bon
    2. C'est pas bon

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    D'accord, je vous remercie de votre réponse rapide, voilà ce que je pense pouvoir faire pour les 3 requêtes fausses :
    *‐ Liste des nids qui ont plus de 5 Shadocks:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT IDSHADOCK FROM SHADOCK
                                JOIN VIVRE ON
     SHADOCK.IDSHADOCK= VIVRE.IDSHADOCK 
    WHERE 
    (SELECT COUNT(IDSHADOCK) FROM VIVRE GROUP BY IDNID ) >5;
    -*‐ Liste de tous les Shadocks qui peuvent emménager dans un autre nid.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT IDSHADOCK FROM  SHADOCK JOIN VIVRE
    ON SHADOCK.IDSHADOCK = VIVRE. IDSHADOCK
                 WHERE 
                 VIVRE.DATEAMENAGMENT IN
                 (SELECT MAX(DATEAMENAGMENT) FROM VIVRE GROUP BY IDNID);
    Pour la requête de : -*‐ Liste des branches qui supportent d’autres branches et la liste des branches qui ne supportent pas de branche.
    Je dirais un BIG au secours !

    Enfin, Si vous en avez plus d'idée, ça sera la bienvenue ☺

Discussions similaires

  1. Besoin de votre avis svp sur mon site www.monwebcv.com
    Par italiasky dans le forum Mon site
    Réponses: 14
    Dernier message: 19/03/2007, 12h57
  2. Réponses: 7
    Dernier message: 10/11/2005, 14h35
  3. Réponses: 6
    Dernier message: 28/02/2005, 15h32
  4. optimisation requetes (besoin de votre avis)
    Par seb92 dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/12/2004, 12h27

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