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

Développement SQL Server Discussion :

Calcul des index d'une station SQL server 2014


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    ETUDE
    Inscrit en
    Septembre 2016
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : ETUDE
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 360
    Par défaut Calcul des index d'une station SQL server 2014
    Salut le forum j'ai créé une table pour l'enregistrement des index d'une station
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE [dbo].[GESTIONSORTIESTATIONS](
    	[Numero] [int] NOT NULL,
    	[Date_Operation] [date] NULL,
    	[HEURS] [varchar](15) NULL,
    	[NOM_STATION] [nvarchar](250) NULL,
    	[NOM_POMPE] [nvarchar](250) NULL,
    	[NOM_PISTOLET] [nvarchar](20) NULL,
    	[NOM_PRODUIT] [nvarchar](250) NULL,
    	[INDEX] [float] NULL,
    	[RETOUR_CUVE] [float] NULL,
    	[PU] [float] NULL,
    	[JAUGE] [float] NULL
    ) ON [PRIMARY]
    GO
    ensuite j'ai écrit la requête suivante pour le calcul des sorties par pompe et par pistolet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    SELECT	
    Date_Operation
    ,HEURS 
    	,[INDEX] AS INDEX_OUVERTURE
    		, LEAD([INDEX]) OVER(ORDER BY  [INDEX]) AS INDEX_FERMETURE
    		,[NOM_STATION]
    	,[NOM_POMPE]
    ,[NOM_PISTOLET]
    ,[NOM_PRODUIT]
    ,[JAUGE]
    	,[PU]	, LEAD([INDEX]) OVER(ORDER BY  [INDEX])  - [INDEX] AS SORTIE
    		,(LEAD([INDEX]) OVER(ORDER BY  [INDEX])  - [INDEX])*([PU]) as MONTANT
     
    FROM		[GESTIONSORTIESTATIONS]
    GROUP BY Date_Operation,HEURS ,[INDEX],[NOM_STATION],[NOM_POMPE],[NOM_PISTOLET],[NOM_PRODUIT],[JAUGE],[PU]
     
     
    GO
    JE voudrais avoir la différence entre l'index S1 de la date précédente et l'index S1 de la date suivante mais cela ne marche quant je fais plusieur enregistrement je vous prie de m'aider s'il quelqu'un a une idée

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    vos clause de tri dans les fonctions LEAD semblent incorrectes.
    il faudrait je pense plutôt trier sur la colonne HEURS (pourquoi est elle au format varchar d'ailleurs, ne représente-t-elle pas l'heure du relevé ?)

    Par ailleurs, fournissez un jeu d'essai et le résultat attendu, ce sera beaucoup plus simple pour bien comprendre le besoin.

  3. #3
    Membre éclairé
    Homme Profil pro
    ETUDE
    Inscrit en
    Septembre 2016
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : ETUDE
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 360
    Par défaut
    Mes voeux pour la Nouvelle année aieeeuuuuu
    La raison pour laquelle j'ai préféré faire l’ordre de try sur les index c'est tout simplement parce que le service fonctionne en trois quart et ces quart sont déjà établit et ne change jamais en regardants le jeux ci-dessous vous verrez par exemple que pour la station CAPOGCO BALESSING l'index de fermeture se retrouve être l'index d'ouverture de la station CAPOGCO YOKADOMA se qui créé une quantité sortie par station qui n'est pas réelle et c'est sa le problème que je souhaite corrigé
    si non la premiere ligne est bien calculer c'est à partir de la deuxième ligne que le problème commence j’espère bien que vous m'avez compris?

    Nom : index.PNG
Affichages : 247
Taille : 30,5 Ko
    Images attachées Images attachées  

  4. #4
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 89
    Par défaut
    Bonjour,

    @Massigne : pour le jeu d'essai référez-vous à ce thread, plus particulièrement le poste de sqlpro.
    https://www.developpez.net/forums/d9...vement-poster/

    Le lien direct pour la 2ème procédure :
    https://blog.developpez.com/sqlpro/p...ipt-dinsertion

    A moins que aieeeuuuuu ait trouvé un moyen de requêter sur des captures

    Bonne journée.

Discussions similaires

  1. Réponses: 9
    Dernier message: 19/06/2008, 12h19
  2. Réponses: 10
    Dernier message: 02/04/2007, 17h22
  3. Réponses: 5
    Dernier message: 17/01/2007, 15h02
  4. des dossiers dans une base sql server
    Par bimus dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/11/2006, 17h25
  5. [J2EE/JSP] Gestion des erreurs avec une base SQL server 2005
    Par critok dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 30/04/2006, 16h57

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