Calculer le numero de semaine d'une date

Soyez le premier à donner votre avis sur cette source.

Snippet vu 58 597 fois - Téléchargée 6 fois

Contenu du snippet

create function PremierJourApres(@UneDate datetime, @QuelJour integer) returns datetime
as
begin
  return DateAdd(day, 6-((DatePart(dw, @UneDate)+6-@QuelJour) % 7), @UneDate)
end
create function NumeroSemaine(@UneDate datetime) returns integer
as
begin
  declare @PremierJeudi datetime, @DebutSemaine1 datetime
  declare @TheDate datetime, @StartOfYear datetime
  set @TheDate = convert(datetime, convert(varchar, @UneDate, 103), 103)
  set @StartOfYear = DateAdd(day, 1-DatePart(dy, @TheDate), @TheDate)
  set @PremierJeudi = dbo.PremierJourApres(@StartOfYear, 4)
  set @DebutSemaine1 = DateAdd(day, -4, @PremierJeudi)
  return 1+(DateDiff(day, @DebutSemaine1, @UneDate) / 7)
end


Compatibilité : SQL, SQL 2005

Disponible dans d'autres langages :

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.