Pytanie : SQL Serwer Korelować korelować zapytanie

I potrzebować zapytanie który biegać po tym jak rozkaz umieszczać TotalItems pole the ilość rzecz rozkazywać przeciw kontyngent pole. Rozkazywać rzecz móc nadmierny przejażdżka cena che trzymać the kontyngent postać w oddzielny table.

Products Table
ID, Wytwórca, Model, Price
1, ManuA, ModelA, 50.00
2, ManuB, ModelB, 25.50
3, ManuC, ModelC, 14.65
4, ManuD, ModelD, 68.00

PriceOverRide Table
ID, ProductsID, PartnerID, Cena, Kontyngent, TotalItems
1, (1), 12, 55.00, 200, 1
2, 4, 8, 69.00, 500, 0
3, 3, 12, 14.00, NIEOBOWIĄZUJĄCY, NULL

Partner Table
ID, Imię, Kod, etc…
8, PartnerA, XXX, …
12, PartnerB, XXX,…

Only rzecz który mieć nadmierny jechać cena wchodzić do w the PriceOverRide Stół. W Ten Sposób w the stół w ten sposób, Rzecz ManuA, ManuC i ManuD mieć spustoszony cena (PriceOverride.Price) che wybierać zamiast Products.Price. Jeżeli the kontyngent być NIEOBOWIĄZUJĄCY wtedy że być świetnie, my właśnie mieć kontyngent na the rzecz. Jeżeli the TotalItems wartość (che wzrastać zasadzony na the rozkaz umieszczać) iść nad the Kontyngent postać wtedy który rzecz zatrzymywać the nadmierny przejażdżka cena i powracać z powrotem Products.Price. Ten wszystkie praca fine.

To dodawać tam, tam  być Partner stół. The partner ID używać w the PriceOverRide stół the override cena tylko pewny partner opierać się na the PartnerID wartość raczej przez the board.

The kawałek I potrzebować pomoc z być kiedy the rozkaz być I potrzebować increment the PriceOverRide.TotalItems wartość the liczba rzecz rozkazywać tylko jeżeli być w the PriceOverRide stół i kontyngent. W Ten Sposób na przykład jeżeli mój rozkaz zawierać 2 * ManuA ModelA rzecz, (1) ManuC ModelC i (1) ManuD ModelD rzecz wtedy I chcieć the PriceOverRide Stół increment the TotalItems pole the liczba rzecz ordered.

Our PriceOverRide stół then zostać:

ID, PriceID, PartnerID, Cena, Kontyngent, TotalItems
1, (1), 12, 55.00, 200, 3
2, 4, 8, 69.00, 500, 1
3, 3, 12, 14.00, NIEOBOWIĄZUJĄCY, NULL

I myśl 14.00 być Korelować korelować zapytanie ale właśnie cant dostawać ono prawy. I być ekspert na SQL ale móc by.

Odpowiedź : SQL Serwer Korelować korelować zapytanie

oops, literówka tam 
(1):
2:
3:
4:
5:
6:
7:
aktualizować a
ustawiać a.Totalitems = skrzynka gdy a.Totalitems + b.quantity  < a="">
           
Inne rozwiązania  
 
programming4us programming4us