Bonjour,

Je possède une table qui regroupe des informations générales de traitement dont voici la définition (SQL Server) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
CREATE TABLE [GLOBALEVENT](
[ID] [int] IDENTITY(1,1) NOT NULL,
[NATURE] [varchar](20) NULL,
[ACTION] [varchar](3) NULL,
[EMETTEUR] [varchar](20) NULL,
[DESTINATAIRE] [varchar](20) NULL,
[DATE_CREATION] [datetime] NULL,
[DATE_TRAITEMENT] [datetime] NULL,
[STATUT] [varchar](10) NULL,
[ERREUR] [varchar](100) NULL)
J'ai ensuite X tables avec des champs différents mais qui reprennent de la table globale :
  • ID


Le champ NATURE de la table global permet d'identifier quelle table contient les informations, ex :
Si NATURE = TABLESYS alors il faudra aller chercher les informations dans TABLESYS.

Les ID sont générés à chaque insertion d'une ligne.
Mais les informations concernent un paquet à chaque fois.

Ex sur TABLESYS dont voici la définition :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
CREATE TABLE [TABLESYS](
[ID] [int] NOT NULL,
[NUMSYS] [varchar](15) NULL,
[ERRORSYS] [varchar](6) NULL,
[USERSYS] [varchar](3) NULL
)
Dans TABLESYS je vais avoir ceci :
ID NUMSYS ERRORSYS USERSYS
1 45785 fdsdfzzezre Admin
2 45785 vdzrzerzr Admin
5 45785 csdfzezszd Admin
10 45785 fdsdfzzezre Admin
12 45785 vdzrzerzr Admin
13 45785 csdfzezszd Admin

Dans la table GLOBALEVENT je vais avoir ceci :
ID NATURE DATE_CREATION DATE_TRAITEMENT STATUT ERREUR
1 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX
2 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX
3 TABLEOTHERX XXXXXXXX XXXXXXX XXXXX XXXXXX
4 TABLEOTHERY XXXXXXXX XXXXXXX XXXXX XXXXXX
5 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX
6 TABLEOTHERZ XXXXXXXX XXXXXXX XXXXX XXXXXX
10 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX
11 TABLEOTHERZ XXXXXXXX XXXXXXX XXXXX XXXXXX
12 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX
13 TABLESYS XXXXXXXX XXXXXXX XXXXX XXXXXX

Ce que je remarque c'est du coup que dans TABLESYS mon NUMSYS a été inscrit deux fois à deux moments différents.
Et j'ai besoin de faire une requête qui me donnerais du coup MIN(ID) et MAX(ID) de chaque traitement séparé.

En sachant que DATE_CREATION de GLOBALEVENT pour un paquet se suit à peut prêt (les secondes augmentent et on peut changer de minutes).
Par contre lorsqu'un deuxième est inscrit, il y a un décalage dans le datetime.

Je n'ai pour le moment pas réussi à faire cela

J’espère avoir été clair

Merci pour votre aide !