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 :

Requête en cascade


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 13
    Points : 14
    Points
    14
    Par défaut Requête en cascade
    Bonjour ,
    voila j'ai un petit souci de sql je travaille actuellement sous Sql Server management studio et je shouaite faire une suite de requête en cascade
    les requetes fonctione indépendamment le probleme arrive quand j'essaye de les imbriqués .
    voici la requête ci dessous et je continue mon explication :p

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    select Expr1 - totalMinutes as TempsProduction from (
    select 480 - [Délai] As Expr1 from(
    select DébutArret.HeureDa, FinArret.HeureFA,FinArret.NumFA
    DATEDIFF(minute, Cast(....), CAST(...) As Délai From DebutArret inner join FinArret on ...)As Temps
     
    union
     
    select DATEDIFF(minute, Cast(....), CAST(...) As totalMinutes, alarmeAcq.heureAcq,NumAcq From AlarmeAcq inner join alarmenonacq on alarmeAcq.NumAcq = AlarmeNonAcq.NumNonAcq)As Ttmin
    )
    donc si je prend la partie ci dessous de ma requête, je n'ai aucun souci la requête s'effectue sans problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select 480 - [Délai] As Expr1 from(
    select DébutArret.HeureDa, FinArret.HeureFA,FinArret.NumFA
    DATEDIFF(minute, Cast(....), CAST(...) As Délai From DebutArret inner join FinArret on ...)As Temps
    c'est quand je veut imbriqué une autre requête a celle ci comme ont peut le voir dans ma requête, que les choses se compliques car je ne voit pas bien comment m'y prendre le totalminutes fait partie de la deuxième requête a imbriquée et je voudrais le soustraire comme on peut le voir à Expr1 qui lui fait partie de la première sous requête. Et si je n'ai pas été très clair voyez ca comme; comment imbriquée deux requête SELECT dans une troisième pour effectuer des calculs?

    Merci d'avance pour vos réponse qui je l'espère viendrons à bout de mon souci ^^

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 874
    Points : 53 048
    Points
    53 048
    Billets dans le blog
    6
    Par défaut
    1) indentez vos requêtes !!!!
    2) utilisez des CTE. A lire : http://sqlpro.developpez.com/cours/s...te-recursives/

    A +

Discussions similaires

  1. [Débutant] Requête en cascade
    Par SharePoint2018 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/11/2014, 21h23
  2. Requête pour liaisons en cascade
    Par ReuK87 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 09/05/2012, 17h20
  3. [AC-2007] Erreur 3070 dans dernière requête en cascade avec sous-requêtes ok
    Par Isayla dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 23/02/2012, 10h05
  4. [AC-2003] Requêtes en cascade limitées ?
    Par mugiwaranorafiki dans le forum Requêtes et SQL.
    Réponses: 22
    Dernier message: 04/08/2010, 15h44
  5. Réponses: 5
    Dernier message: 27/05/2009, 11h53

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