Pergunta : Última semana cheia no sql

Eu estou tendo um problema com seleção da última semana cheia, o código abaixo mostro cada coisa após domingo da meia-noite antes da meia-noite domingo de proximo.
que eu apenas quero ver segunda-feira de proximo de 08.00 segunda-feira de manh� a 07.00 am o morming.
class= > " desobstruído " do
> do " codeSnippet " do class= do
class= " lineNumbers " do
class= do
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
@TodayDayOfWeek notpretty INT do >DECLARE " do class= " de " codeSnippet778764 do id= do
 “6” de dbo.CreateOrder.n_StatusFlags) E 
                      (<> “26” de dbo.t_OrderLines.n_Type) E (<> “18” de dbo.t_OrderLines.n_Type) E (dbo.CreateOrder.n_OrderOriginallyPlacedTime NO MEIO 
CONVERSO (VARCHAR, @STARTOFPREVWEEK, 7)
E
CONVERSO (VARCHAR, @ENDOFPREVWEEK+1,7))
 E (<> “2719” de dbo.t_OrderLines.n_MenuId)
ORDEM por dbo.CreateOrder.n_OrderOriginallyPlacedTime
class= > " desobstruído " do
> do " codeSnippet " do class= do
class= " lineNumbers " do
class= do
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
@TodayDayOfWeek notpretty INT do >DECLARE " do class= " de " codeSnippet778767 do id= do
 “6” de dbo.CreateOrder.n_StatusFlags) E 
                      (<> “26” de dbo.t_OrderLines.n_Type) E (<> “18” de dbo.t_OrderLines.n_Type) E (dbo.CreateOrder.n_OrderOriginallyPlacedTime NO MEIO 
CONVERSO (VARCHAR, @STARTOFPREVWEEK, 7)
E
CONVERSO (VARCHAR, @ENDOFPREVWEEK+1,7))
 E (<> “2719” de dbo.t_OrderLines.n_MenuId)
ORDEM por dbo.CreateOrder.n_OrderOriginallyPlacedTime
class= do

Resposta : Última semana cheia no sql

Tentar usar o código unido. Trabalha somente muito bem se você funciona somente em segundas-feiras.

DECLARAR O @TODAYDAYOFWEEK INT
DECLARAR o DateTime do @EndOfPrevWeek
DECLARAR o DateTime do @StartOfPrevWeek
AJUSTAR o @TodayDayOfWeek = o datepart (dw, GetDate ())
AJUSTAR o @EndOfPrevWeek = o CONVERSO (VARCHAR, DATEADD (dd, - (@TodayDayOfWeek-2), GetDate ()), 112) + “07:00”
AJUSTAR o @StartOfPrevWeek = o CONVERSO (VARCHAR, DATEADD (dd, - (@TodayDayOfWeek+5), GetDate ()), 112) + “08:00”
SELECIONAR 100) POR CENTO dbo.CreateOrder.n_OrderOriginallyPlacedTime da PARTE SUPERIOR (, dbo. Plu.Plu, dbo. Plu.ItemName, dbo. Plu.Price, dbo.t_OrderLines.n_Amount, dbo.t_OrderLines.n_OrderNum,
                      dbo.t_OrderLines.n_Type, dbo.t_OrderLines.n_MenuId, dbo.t_OrderPayment.n_Order, dbo.t_OrderPayment.n_PayAmount
De dbo.t_OrderPayment COMPLETAMENTE EXTERIOR JUNTAR-SE
                      dbo.CreateOrder EM dbo.t_OrderPayment.nStoreID = dbo.CreateOrder.nStoreID E
                      dbo.t_OrderPayment.n_Order = dbo.CreateOrder.n_OrderNum COMPLETAMENTE EXTERIORES JUNTAM-SE
                      dbo.t_OrderLines EM dbo.CreateOrder.n_OrderNum = dbo.t_OrderLines.n_OrderNum COMPLETAMENTE EXTERIOR JUNTAM-SE
                      dbo. Plu EM dbo.t_OrderLines.n_MenuId = dbo. Plu.n_MenuId
ONDE (dbo.t_OrderLines.nStoreID = “528”) E (dbo.CreateOrder.nStoreID = “528”) E (dbo.CreateOrder.n_StatusFlags <> “6”) E
                      (dbo.t_OrderLines.n_Type <> “26”) E (dbo.t_OrderLines.n_Type <> “18”) E (dbo.CreateOrder.n_OrderOriginallyPlacedTime NO MEIO
@StartOfPrevWeek
E
@EndOfPrevWeek
 E (dbo.t_OrderLines.n_MenuId <> “2719”)
ORDEM por dbo.CreateOrder.n_OrderOriginallyPlacedTime
Outras soluções  
 
programming4us programming4us