J'ai une table avec un nombre assez élevés d'enregistrements. Un
des champs de cette table est le champ "PubDate" de type DateTime. Je
cherche à récuperer les enregistrement de facon distinct par année et mois.
Le but de cela est de produire une liste années et mois qui ressemblerais à
cela:
Décembre 2004 (4)
Novembre 2004 (8)
Aout 2004 (1)
Juin 2004 (12)
Janvier 2004 (1)
Décembre 2003 (6)
etc...
Le nombre d'enregistrement pour un mois/année n'est pas vraiment nécéssaire
mais c'est plus agréable au niveau fonctionnalité. Je ne sais pas par contre
comment faire pour récupérer uniquement une certaine partie d'un champ
DateTime d'une base de donnée access.
L'autre question que je me pose est de savoir s'il est possible de sauter
les 10 premiers enregistrement sans savoir le nombre total avec un mot clé
du genre "Top 10". Par exemple si j'ai 90 enregistrements dans une table
j'aimerais qu'il me retourne uniquement les 80 derniers.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Osman MALIK [MS]
Bonjour,
Sous ADO.NET, il vous faut créer un DataReader qui lit les données triées par Date (SELECT ChampDateTime FROM Table ORDER BY ChampDateTime DESC). Au fur et à mesure que vous parcourez vos données, vous y vérifiez le mois contenu dans la valeur DateTime. A chaque nouveau mois, vous incrémentez un compteur et vous vous servez de cette valeur pour connaître le nombre de champs par mois. Vous vous basez sur ces données pour peupler votre liste.
Pour votre deuxième question, la fonctionnalité TOP X dépend de votre base de données. Si votre base de données ne le supporte pas, la solution qui vous convient est de mettre en place une fonctionnalité de "Paging" dans l'affichage de vos données et de n'afficher que les données qui vous intéressent. Voici un exemple pour SQL Server: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/pagercontrols.asp
Cordialement, Osman MALIK Microsoft France
"Francois Soucy" wrote in message news:
Bonjour à tous!
J'ai une table avec un nombre assez élevés d'enregistrements. Un des champs de cette table est le champ "PubDate" de type DateTime. Je cherche à récuperer les enregistrement de facon distinct par année et mois. Le but de cela est de produire une liste années et mois qui ressemblerais à cela:
Décembre 2004 (4) Novembre 2004 (8) Aout 2004 (1) Juin 2004 (12) Janvier 2004 (1) Décembre 2003 (6) etc...
Le nombre d'enregistrement pour un mois/année n'est pas vraiment nécéssaire mais c'est plus agréable au niveau fonctionnalité. Je ne sais pas par contre comment faire pour récupérer uniquement une certaine partie d'un champ DateTime d'une base de donnée access.
L'autre question que je me pose est de savoir s'il est possible de sauter les 10 premiers enregistrement sans savoir le nombre total avec un mot clé du genre "Top 10". Par exemple si j'ai 90 enregistrements dans une table j'aimerais qu'il me retourne uniquement les 80 derniers.
Merci d'avance à vous tous Francois
Bonjour,
Sous ADO.NET, il vous faut créer un DataReader qui lit les données triées
par Date (SELECT ChampDateTime FROM Table ORDER BY ChampDateTime DESC).
Au fur et à mesure que vous parcourez vos données, vous y vérifiez le mois
contenu dans la valeur DateTime.
A chaque nouveau mois, vous incrémentez un compteur et vous vous servez de
cette valeur pour connaître le nombre de champs par mois.
Vous vous basez sur ces données pour peupler votre liste.
Pour votre deuxième question, la fonctionnalité TOP X dépend de votre base
de données.
Si votre base de données ne le supporte pas, la solution qui vous convient
est de mettre en place une fonctionnalité de "Paging" dans l'affichage de
vos données et de n'afficher que les données qui vous intéressent.
Voici un exemple pour SQL Server:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/pagercontrols.asp
Cordialement,
Osman MALIK
Microsoft France
"Francois Soucy" <Root@127.0.0.1> wrote in message
news:OSpvVKWCFHA.4036@TK2MSFTNGP15.phx.gbl...
Bonjour à tous!
J'ai une table avec un nombre assez élevés d'enregistrements.
Un des champs de cette table est le champ "PubDate" de type DateTime. Je
cherche à récuperer les enregistrement de facon distinct par année et
mois. Le but de cela est de produire une liste années et mois qui
ressemblerais à cela:
Décembre 2004 (4)
Novembre 2004 (8)
Aout 2004 (1)
Juin 2004 (12)
Janvier 2004 (1)
Décembre 2003 (6)
etc...
Le nombre d'enregistrement pour un mois/année n'est pas vraiment
nécéssaire mais c'est plus agréable au niveau fonctionnalité. Je ne sais
pas par contre comment faire pour récupérer uniquement une certaine partie
d'un champ DateTime d'une base de donnée access.
L'autre question que je me pose est de savoir s'il est possible de sauter
les 10 premiers enregistrement sans savoir le nombre total avec un mot clé
du genre "Top 10". Par exemple si j'ai 90 enregistrements dans une table
j'aimerais qu'il me retourne uniquement les 80 derniers.
Sous ADO.NET, il vous faut créer un DataReader qui lit les données triées par Date (SELECT ChampDateTime FROM Table ORDER BY ChampDateTime DESC). Au fur et à mesure que vous parcourez vos données, vous y vérifiez le mois contenu dans la valeur DateTime. A chaque nouveau mois, vous incrémentez un compteur et vous vous servez de cette valeur pour connaître le nombre de champs par mois. Vous vous basez sur ces données pour peupler votre liste.
Pour votre deuxième question, la fonctionnalité TOP X dépend de votre base de données. Si votre base de données ne le supporte pas, la solution qui vous convient est de mettre en place une fonctionnalité de "Paging" dans l'affichage de vos données et de n'afficher que les données qui vous intéressent. Voici un exemple pour SQL Server: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/pagercontrols.asp
Cordialement, Osman MALIK Microsoft France
"Francois Soucy" wrote in message news:
Bonjour à tous!
J'ai une table avec un nombre assez élevés d'enregistrements. Un des champs de cette table est le champ "PubDate" de type DateTime. Je cherche à récuperer les enregistrement de facon distinct par année et mois. Le but de cela est de produire une liste années et mois qui ressemblerais à cela:
Décembre 2004 (4) Novembre 2004 (8) Aout 2004 (1) Juin 2004 (12) Janvier 2004 (1) Décembre 2003 (6) etc...
Le nombre d'enregistrement pour un mois/année n'est pas vraiment nécéssaire mais c'est plus agréable au niveau fonctionnalité. Je ne sais pas par contre comment faire pour récupérer uniquement une certaine partie d'un champ DateTime d'une base de donnée access.
L'autre question que je me pose est de savoir s'il est possible de sauter les 10 premiers enregistrement sans savoir le nombre total avec un mot clé du genre "Top 10". Par exemple si j'ai 90 enregistrements dans une table j'aimerais qu'il me retourne uniquement les 80 derniers.