Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/07/2011, 14h33   #1
Candidat au titre de Membre du Club
 
Développeur Web
Inscription : janvier 2011
Messages : 48
Détails du profil
Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2011
Messages : 48
Points : 13
Points : 13
Par défaut Procédure Stockée: Count Distinct Date

Bonjour,
je dispose d'une table qui est de la forme suivante:

ID | Date | Client | Valeur....

Les dates contiennent aussi le temps, par exemple:
01-01-2008 15:14:0000.

Je souhaite récuperer le nombre d'enregistrement (Count) par jour sur une periode de date que je donne en argument.

Récuper un select de la forme:

'DATE' 'Nombre'
01-01-2008 144
02-01-2008 200
....
...

Voila, j'arrive a supprimer le temps des dates, mais je n'arrive pas à compter pour chaque jour.

Code :
1
2
3
4
5
 
SELECT DISTINCT(CAST(FLOOR(CAST([Date] AS FLOAT)) AS DATETIME)) AS Date FROM Nom_table
WHERE [Customer]='client'
AND [Date]>=@DateStart AND [Date]<=@DateStop
ORDER BY Date;
avec DateStart et DateStop sont donné comme argument de la procédure stockée
Kirua76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2011, 15h50   #2
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour,

le nombre de lignes par jour ?

Code SQL :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
SELECT
    DATEADD(
        DAY,
        DATEDIFF(
            DAY,
            0,
            [Date]
        ),
        0
    ), AS Jour
    COUNT(*) AS Nb
FROM LaTable
WHERE [Customer]='client'
AND [Date]>=@DateStart AND [Date]<=@DateStop
GROUP BY DATEADD(
        DAY,
        DATEDIFF(
            DAY,
            0,
            [Date]
        ),
        0
    )
ORDER BY Jour
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2011, 08h33   #3
Candidat au titre de Membre du Club
 
Développeur Web
Inscription : janvier 2011
Messages : 48
Détails du profil
Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2011
Messages : 48
Points : 13
Points : 13
Merci, c'était exactement la procédure que je cherchais
Kirua76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h03.


 
 
 
 
Partenaires

Hébergement Web