SQL Server gibt eine unerwartete Wochennummer zurück

8

Ich habe einige Bestellungen in einer Tabelle und das letzte Bestelldatum von 2011 ist der 20. Dez.

Ich verwende einen SQL-Befehl, um die Anzahl der Bestellungen in einer bestimmten Woche zu berechnen:

%Vor%

Es gibt mir einige der folgenden Ergebnisse zurück:

%Vor%

Das Problem dabei ist, dass das letzte Bestelldatum von 2011, das ich erwähnt habe, der 20. Dezember 2011 ist, was nicht Woche 52 sein kann, also muss es Woche 51 sein.

Ich habe einige andere Statistiken (von einem anderen System, nicht SQL-Server), die mir einige andere Zahlen geben, und die letzte Woche darauf ist 51, was ich zweifelsohne richtig finde. Es wird also Fragen geben, wenn die Leute beide suchen!

Hat jemand eine Idee oder weiß, wie man das sortiert?

Danke,

    
thegunner 08.03.2012, 16:16
quelle

4 Antworten

10

Die iso_week vom 20. Dezember 2011 ist 51. Vielleicht brauchen Sie das also.

%Vor%     
t-clausen.dk 08.03.2012 19:01
quelle
1

SQL zählt eine Woche als Sonntag-Samstag, Sie können das folgende Skript verwenden, um zu sehen, wie die Wochen für 2011 ausbrechen. Der 1. Januar ist ein Samstag, was bedeutet, dass die erste Woche nur 1 Tag ist. Es gibt 53 SQL-Wochen im Jahr 2011 und 53 Wochen in den meisten Jahren

%Vor%

Wenn Sie die Anzahl der Tage SQL als erste der Woche ändern möchten, können Sie den Befehl DATEFIRST

verwenden

Ссылка

    
msmucker0527 08.03.2012 16:23
quelle
0
%Vor%

Sollte Ihnen die Wochennummer geben.

    
Bridge 08.03.2012 16:20
quelle
0

Also

%Vor%

Sehen Sie, was Woche 52 ist, was Sie nicht für 52 halten.

PS Wenn Sie Woche 1 am 1/1 beginnen, ist es nicht möglich, ein 52-Wochen-Jahr zu haben, es sei denn 1 und oder 52 sind keine 7-Tage-Wochen.

    
Tony Hopkinson 08.03.2012 16:32
quelle

Tags und Links