Bonjour à tous,

Je suis sous SQL Server 2005 (et 2008 R2, et bientôt sur 2012). J'ai encore du mal à comprendre l'utilisation des dates...

j'ai créé un package SSIS, dans lequel je vais chercher la taille de mes bases de données sur toutes mes instances. Dans le dataflow il va chercher les données, et insert via un "Derived column" la date du jour avec un GETDATE dans une nouvelle colonne que j'ai appelé [InsertDate].

Bien évidemment, si je fais un SELECT * de ma table dans laquelle il va mettre toutes les DB de toutes mes instances x Njour, je me retrouve avec des multiples dans mon rapport dans Excel. Ce que je souhaite, c'est extraire de cette table, uniquement la taille de mes DB du jour (je ferai tourner mon job le matin).

Voici ma table :
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].[DBSize](
	[DatabaseName] [nvarchar](255) NULL,
	[type] [varchar](10) NULL,
	[LogicalName] [sysname] NULL,
	[T] [decimal](10, 2) NULL,
	[U] [decimal](10, 2) NULL,
	[U(%)] [decimal](5, 2) NULL,
	[F] [decimal](10, 2) NULL,
	[F(%)] [decimal](5, 2) NULL,
	[PhysicalName] [nvarchar](255) NULL,
	[ServerName] [nvarchar](255) NULL,
	[InsertDate] [datetime] NULL
) ON [PRIMARY]

Je ne veux pas que cela s'affiche dans mon excel, mais plutôt que ce soit filtré. Voici 5 de mes essais.
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 [ServerName]
	  ,[DatabaseName]
      ,[type]
      ,[LogicalName]
      ,[T]
      ,[U]
      ,[U(%)]
      ,[F]
      ,[F(%)]
      ,[PhysicalName]
  FROM [_dba_volume_admin].[dbo].[DBSize]
  --WHERE [InsertDate] = DATEADD(DAY,DATEDIFF(DAY,0,0),0)
  --WHERE [InsertDate] = DATEADD(DAY,DATEDIFF(DAY,1,GETDATE()),1)
  --WHERE [InsertDate] = DATEADD(day,DATEDIFF(day,0,GETDATE()),0-- Me donne un tableau vide) 
  --WHERE [InsertDate] = DATEPART(DAY,[InsertDate])
  --WHERE [InsertDate] = ((DATEDIFF(day, GetDate(),MAX([InsertDate]))) -1)
Voilà, je peine un peu avec les dates. Je dois peut-être utiliser un Having...

P.S : Hors sujet "humour" : J'ai conscience que j'ai essayé tout et n'importe quoi, et donc que SQLPro va surement me dire de suivre des cours, c'est prévu pour m'améliorer cher Frédéric :-)