[ASP] Kalenderwoche in SQL

Jürgen Wemheuer activeserverpages at glengamoi.com
Mon, 6 Dec 2004 19:31:35 +0100


Hallo,
habe ich mal irgendwo aufgeschnappt:

<schnipp>

' *** Ermittelt die Kalenderwoche mit dem zur Kalenderwoche gehörigem Jahr 
***
' *** fConvKW wird in der Form YYYYWW zurückgegeben ***
Public Function fConvKW(ByVal ZuKonvertDat As Date) As String
  ' PROBLEM:
  ' DatePart - in der uns üblichen Arbeitsweise
  ' DatePart("ww", Datum, vbMonday, vbFirstFourDays) -
  ' wirft für folgende Daten folgende Werte aus
  ' So, 28.12.2003 oder 30.12.2007 -> KW52 -> richtig
  ' Mo, 29.12.2003 oder 31.12.2007 -> KW53 -> QUATSCH
  ' Di, 30.12.2003 oder 01.01.2008 -> KW01 -> richtig
  ' deshalb bestimme ich vorsichtshalber die Kalenderwoche
  ' des Dienstags ?!?!?!?!?!

  If Weekday(ZuKonvertDat) = vbMonday Then _
    ZuKonvertDat = ZuKonvertDat + 1

  fConvKW = DatePart("ww", ZuKonvertDat, vbMonday, vbFirstFourDays)

  ' Anpassung des Jahres und Ergänzung der Null
  ' (in den Kalenderwochen 01, 52 und 53 kann das Jahr des Datums
  ' anders sein als das Jahr der zugehörigen Kalenderwoche.
  ' So liegt der 31.12.2001 in KW01/2002)

  If fConvKW < 10 Then
    fConvKW = Year(ZuKonvertDat + 6) & "0" & fConvKW
  Else
    fConvKW = Year(ZuKonvertDat - 6) & fConvKW
  End If
End Function

</schnipp>

Vielleicht kannst was damit anfangen...
Jürgen

----- Original Message ----- 
From: "Klee, Andreas" <A.Klee@deutsche-immobilien.ag>
To: <activeserverpages@glengamoi.com>
Sent: Monday, December 06, 2004 5:06 PM
Subject: [ASP] Kalenderwoche in SQL


Hallo,

Ich möchte mit einem SQL Statment die Kalenderwoche ermitteln.
Mit  - DATEPART(wk, T1.datum) AS woche - kein Problem, dachte ich.

Am 3.1.2005 ist halt woche 1 und nicht woche 2.
Wie kann ich einstellen das die erste woche die ist mit 4 mindestens Tagen.

Viele Grüße von der Küste.
Andreas
_______________________________________________
ActiveServerPages Mailingliste, Postings senden an:
ActiveServerPages@glengamoi.com
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/activeserverpages