Je cherche une solution pour effectuer une requete sur un fichier de données ayant des dates et des sommes.
La requete doit regrouper le total des sommes par semaine.
J'ai beau chercher depuis des semaines, mais je ne trouve aucune solution simple sans passer par un tcd.
Quelqu'un aurait-il une solution ?
Salut,
Déjà il faut savoir que selon les pays, la semaine ne commence pas le même jour.
Certains c'est le lundi, d'autres le dimanche, etc
Et il existe plein d'autres règles et normes même si on ne fait que se baser sur le calendrier grégorien.
Et que fait tu des semaines en début et fin d'année ?
De début et fin de mois ?
Elles comptent ou pas ?
A ta question vague, je vois que tu n'as pas réfléchi à quel règles tu dois te baser.
Merci pour ta réponse.
Mais j'ai effectivement pensé à tout cela.
Le soucis c'est que le code que j'ai généré (pour prendre en compte tout cela) relève d'une boucle qui défini les semaines en question et que dans cette boucle j'ai plusieurs résultats de différentes requêtes ce qui prendre du temps (quelques secondes) pour la récupération de toutes ces informations.
Dans le cas d'un tcd, cette fonction est instantanée.
Donc je voulais juste savoir s'il y avait une autre manière plus rapide de regrouper par semaine dans une requête (de la même manière que pour regrouper par mois).
Apparemment non. Donc je continue de faire à ma manière.
Merci quand même
Message envoyé
le
08-05-2023
par
Voroltinquo
(France)
Bonjour,
Dans ton DATEPART, il faut utiliser ww (ou isoww si tu travailles en ISO 8601) au lieu de mm, que tu utilises pour récupérer le mois.
[CODE]
SELECT
DATEPART(ww,Client.NDX_DateInscription) AS NoSemaine,
SUM(Client.CAClient) AS TotalCommande
FROM
Client
GROUP BY
DATEPART(ww,Client.NDX_DateInscription)
[/CODE]
Ça c'est une réponse productive et efficace qui correspond exactement à ma demande.
Encore merci car ce petit morceau de code me réduit considérablement, non seulement la longueur de mon code, mais également le temps de traitement qui devient un affichage instantané.