Pytanie : Kopyto Szewskie folować tydzień w sql

I mieć problem z the kopyto szewskie folować tydzień, the kod folować pokazywać każdy rzecz po tym jak każdy Niedziela przed północ the następny Sunday.
I właśnie chcieć od 08.00 Poniedziałek rano 07.00 am the następny poniedziałek morming.
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
DECLARE @TodayDayOfWeek INT
OZNAJMIAĆ @EndOfPrevWeek DateTime
OZNAJMIAĆ @StartOfPrevWeek DateTime
USTAWIAĆ @TodayDayOfWeek = datepart (dw, GetDate ())
USTAWIAĆ @EndOfPrevWeek = DATEADD (dd, - @TodayDayOfWeek, GetDate ())
USTAWIAĆ @StartOfPrevWeek = DATEADD (dd, - (@TodayDayOfWeek+6), GetDate ())
WYBIERAĆ WIERZCHOŁEK (100) PROCENT dbo.CreateOrder.n_OrderOriginallyPlacedTime, 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 
OD dbo.t_OrderPayment FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.CreateOrder NA dbo.t_OrderPayment.nStoreID = dbo.CreateOrder.nStoreID I 
                      dbo.t_OrderPayment.n_Order = dbo.CreateOrder.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.t_OrderLines NA dbo.CreateOrder.n_OrderNum = dbo.t_OrderLines.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo. Plu NA dbo.t_OrderLines.n_MenuId = dbo. Plu.n_MenuId
DOKĄD (dbo.t_OrderLines.nStoreID = "528") I (dbo.CreateOrder.nStoreID = "528") I (dbo.CreateOrder.n_StatusFlags <> "6") I 
                      (dbo.t_OrderLines.n_Type <> "26") I (dbo.t_OrderLines.n_Type <> "18") I (dbo.CreateOrder.n_OrderOriginallyPlacedTime POŚRODKU 
KONWERTYTA (VARCHAR, @STARTOFPREVWEEK, 7)
I
KONWERTYTA (VARCHAR, @ENDOFPREVWEEK+1,7))
 I (dbo.t_OrderLines.n_MenuId <> "2719")
ROZKAZ Dbo.CreateOrder.n_OrderOriginallyPlacedTime
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
DECLARE @TodayDayOfWeek INT
OZNAJMIAĆ @EndOfPrevWeek DateTime
OZNAJMIAĆ @StartOfPrevWeek DateTime
USTAWIAĆ @TodayDayOfWeek = datepart (dw, GetDate ())
USTAWIAĆ @EndOfPrevWeek = DATEADD (dd, - @TodayDayOfWeek, GetDate ())
USTAWIAĆ @StartOfPrevWeek = DATEADD (dd, - (@TodayDayOfWeek+6), GetDate ())
WYBIERAĆ WIERZCHOŁEK (100) PROCENT dbo.CreateOrder.n_OrderOriginallyPlacedTime, 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 
OD dbo.t_OrderPayment FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.CreateOrder NA dbo.t_OrderPayment.nStoreID = dbo.CreateOrder.nStoreID I 
                      dbo.t_OrderPayment.n_Order = dbo.CreateOrder.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.t_OrderLines NA dbo.CreateOrder.n_OrderNum = dbo.t_OrderLines.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo. Plu NA dbo.t_OrderLines.n_MenuId = dbo. Plu.n_MenuId
DOKĄD (dbo.t_OrderLines.nStoreID = "528") I (dbo.CreateOrder.nStoreID = "528") I (dbo.CreateOrder.n_StatusFlags <> "6") I 
                      (dbo.t_OrderLines.n_Type <> "26") I (dbo.t_OrderLines.n_Type <> "18") I (dbo.CreateOrder.n_OrderOriginallyPlacedTime POŚRODKU 
KONWERTYTA (VARCHAR, @STARTOFPREVWEEK, 7)
I
KONWERTYTA (VARCHAR, @ENDOFPREVWEEK+1,7))
 I (dbo.t_OrderLines.n_MenuId <> "2719")
ROZKAZ Dbo.CreateOrder.n_OrderOriginallyPlacedTime

Odpowiedź : Kopyto Szewskie folować tydzień w sql

Próba the dołączać kod. Ono tylko pracować świetnie jeżeli ty biegać tylko na Poniedziałek.

OZNAJMIAĆ @TODAYDAYOFWEEK INT
OZNAJMIAĆ @EndOfPrevWeek DateTime
OZNAJMIAĆ @StartOfPrevWeek DateTime
USTAWIAĆ @TodayDayOfWeek = datepart (dw, GetDate ())
USTAWIAĆ @EndOfPrevWeek = KONWERTYTA (VARCHAR, DATEADD (dd, - (@TodayDayOfWeek-2), GetDate ()), 112) + "07:00"
USTALONY @StartOfPrevWeek = KONWERTYTA (VARCHAR, DATEADD (dd, - (@TodayDayOfWeek+5), GetDate ()), 112) + "08:00"
WYBRANY ODGÓRNY (100) PROCENT dbo.CreateOrder.n_OrderOriginallyPlacedTime, 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
OD dbo.t_OrderPayment FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.CreateOrder NA dbo.t_OrderPayment.nStoreID = dbo.CreateOrder.nStoreID I
                      dbo.t_OrderPayment.n_Order = dbo.CreateOrder.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo.t_OrderLines NA dbo.CreateOrder.n_OrderNum = dbo.t_OrderLines.n_OrderNum FOLOWAĆ ZEWNĘTRZNY ŁĄCZYĆ
                      dbo. Plu NA dbo.t_OrderLines.n_MenuId = dbo. Plu.n_MenuId
DOKĄD (dbo.t_OrderLines.nStoreID = "528") I (dbo.CreateOrder.nStoreID = "528") I (dbo.CreateOrder.n_StatusFlags <> "6") I
                      (dbo.t_OrderLines.n_Type <> "26") I (dbo.t_OrderLines.n_Type <> "18") I (dbo.CreateOrder.n_OrderOriginallyPlacedTime POŚRODKU
@StartOfPrevWeek
I
@EndOfPrevWeek
 I (dbo.t_OrderLines.n_MenuId <> "2719")
ROZKAZ Dbo.CreateOrder.n_OrderOriginallyPlacedTime
Inne rozwiązania  
 
programming4us programming4us