Chercher Et Ou Phrase  
Dans:          


Pour les nouveau visiteurs

Entrez ici

Chercher le Forum



 

 Les Forums
  Programmation avancée
Repondre a ce sujet  

Sujet Requete regroupement par semaine
Message envoyé le 08-05-2023 par dviance (France)  
Bonjour,

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 ?

Merci beaucoup.

Message envoyé le 08-05-2023 par popoy (France)  
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.

Message envoyé le 08-05-2023 par dviance (France)  
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]

Message envoyé le 10-05-2023 par dviance (France)  
Bonjour.

Merci beaucoup, Voroltinquo.

Ç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é.


Pour répondre à ce message vous devez être membre

Entrée membre    Enregistrer




Retour © 1996-2024 forum.acam.ca