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 :

Une simple soustraction [2014]


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 316
    Par défaut Une simple soustraction
    Bonjour ç tous,

    Question bête, comment vous feriez une simple soustraction de la colonne RELIQUAT dont l'ID est identique et des 2 DATE les plus récentes ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ID	RELIQUAT	DATE	        IN_OUT
    14	13	2019-03-28 10:47:38.890       0
    14	18	2019-03-28 10:46:45.967       0
    14	20	2019-03-28 10:45:18.120       0
    43	1	2019-03-28 10:03:36.193       1
    43	5	2019-03-28 10:03:25.567       1
    Soit dans mon exemple, faire la soustraction 18-13 (de l'ID 14), et la soustraction 5-1 (de l'ID 43)..

    Voici ou j'en suis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    select top 2 t.*,tprev.*,
           ( tprev.reliquat - t.reliquat)  as delta
    	   ,ROW_NUMBER() OVER(ORDER BY t.ID ASC) AS Row#
    from pdc_reliquat t 
     
    left outer join pdc_reliquat tprev
    on t.id = tprev.id
     
    where t.id = '14'
    order by t.DATE desc
    Ce qui me donne comme résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ID	RELIQUAT	DATE	    IN_OUT	ID	RELIQUAT	DATE	        IN_OUT	delta	Row#
    14	13	2019-03-28 10:47:38.890     0	14	20	2019-03-28 10:45:18.120     0	7	1
    14	13	2019-03-28 10:47:38.890     0	14	18	2019-03-28 10:46:45.967     0	5	2
    Merci pour votre aide

  2. #2
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 316
    Par défaut
    une solution :

    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
     
    select top 1 RELIQUAT
     
    	- (select top 1 RELIQUAT 
    		from (SELECT  top 2 RELIQUAT
    			FROM PDC_RELIQUAT 
    			where id = 14 order by date desc 
    			) as t
    		order by RELIQUAT asc
    	)
    from (
    	SELECT  top 2 RELIQUAT
    	FROM PDC_RELIQUAT
    	where id = 14
    	order by date desc
    ) as t
    order by RELIQUAT desc

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

Discussions similaires

  1. Une simple soustraction
    Par audrey1912 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 10/09/2012, 14h59
  2. comment creer une simple application graphique.
    Par pug dans le forum Interfaces Graphiques en Java
    Réponses: 23
    Dernier message: 25/11/2005, 02h05
  3. Réponses: 10
    Dernier message: 02/11/2005, 11h12
  4. PageControl -> Une simple question
    Par Invité dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/05/2004, 09h19

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