How to get Nummer der Woche im Monat aus dem Datum in sql server 2008

In der SQL-Anweisung in microsoft sql server gibt es eine eingebaute Funktion, um die Woche Nummer, aber es ist die Woche des Jahres.

Select DatePart(week, '2012/11/30') // **returns 48**

Ist der zurückgegebene Wert 48 ist die Nummer der Woche des Jahres.

Statt 48, ich will 1, 2, 3 oder 4 (Nummer der Woche im Monat). Ich denke, die Nummer der Woche im Monat erreicht werden kann, indem Module mit Monats-Nummer von dieser Woche. Für z.B.

Select DATEPART(week, '2012/11/30')%MONTH('2012/11/30')

Aber ich möchte wissen, gibt es weitere eingebaute Funktionen, um Wochennummer des Monats in MS SQL SERVER.

  • sehen: stackoverflow.com/questions/4928038/..., während Ihre Lösung ist die, die sieht sehr elegant zu mir. +1 für das
  • die Lösung gepostet in der Frage ist nicht einmal in der Nähe zu arbeiten
  • wie definieren Sie Wochennummer ? An welchem Tag die Woche beginnen die Woche (Sonntag oder Montag). Wollen Sie halbe Wochen, die in 2 verschiedenen Monaten, möchten Sie behandeln es wie iso_week oder nur ganze Wochen?
  • Gestand ich, dass die Antwort in dieser Frage ist falsch. Ich poste die richtige Antwort nach der ich zum Schluss die Lösung.
  • Sorry für den necro. Ich brauchte etwas, das sehr ähnlich ist, aber alle Ergebnisse, die ich gefunden sind, wie @t-clausen.dk 's Antwort. Meine interpretation der obigen Frage ist, dass, Jan 1 - Jan 7 wäre Woche 1, Jan 8-14 Woche 2 usw. Das ist das, was ich brauchte, und ich kam mit dieser: wählen Sie (datepart(Tag, @date) - 1) / 7 % 7 + 1
InformationsquelleAutor Nay Lin Aung | 2012-10-29
Schreibe einen Kommentar