Quantcast
Channel: SQL Server Express Forum
Viewing all articles
Browse latest Browse all 484

Kalenderwochen mit Montagsdatum und End-Datum

$
0
0

Hallo zusammen,

ich bin auf der Suche nach einem Scirpt, wo ich in einer Tabelle für irgendein Jahr folgende Werte bekomme:

  • Kalenderwoche
  • Anfangsdatum (Montag)
  • Enddatum (Sonntag)

Ich brauche also 52 oder 53 Zeilen, je nach Jahr

Jetzt habe ich mir selbst etwas zusammengeschustert, es funktioniert auch, wenn ich die einzelne Kalenderwoche selectiere. Aber ich möchte alle Kalenderwochen für das jeweilige Jahr auswerfen und das bekomme ich nicht hin.

Hat jemand einen Tipp?

GO

/****** Object:  StoredProcedure [dbo].[Detailsaddupdate]    Script Date: 01.03.2015 10:19:05 ******/
SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER PROCEDURE [dbo].[Getkalenderwoche] @jahr  SMALLINT
                                         --@woche SMALLINT
AS
  BEGIN
      SET NOCOUNT ON;

      DECLARE @RefWeek        SMALLINT,
              @RefDate        DATETIME,
              @Days           SMALLINT,
              @FirstDayOfWeek DATETIME,
              @aktdate        DATETIME,
	      @woche SMALLINT



      SET @woche = 1

      WHILE ( @woche <= 53 )

      SET @RefDate = CONVERT(DATETIME, CONVERT(CHAR(4), @Jahr) + '0201');
      SET @RefWeek = Datepart(ISO_WEEK, @RefDate);
      SET @Days = 7 * ( @Woche - @RefWeek ) - Datepart(DW, @RefDate) + 1;
      SET @FirstDayOfWeek = Dateadd(d, @Days, @RefDate);


        SELECT dbo.Ddatum(@FirstDayOfWeek)     AS firstday,
               dbo.Ddatum(@FirstDayOfWeek + 6) AS lastday,
               dbo.Getwoche(@FirstDayOfWeek)

		 SET @woche = @woche + 1
  END

Lieben Dank im vorraus.


Liebe Grüße, die Luzie!


Viewing all articles
Browse latest Browse all 484


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>