Как получить записи с помощью оператора select в цикле while в SQL Server? - PullRequest
1 голос
/ 11 мая 2019

У меня есть 2 таблицы с именами Product и ProductDetails.

Мои критерии довольно сложные. Я не знаю, как это сделать.

Итак, снова переместите ProductDetails запись во временную таблицу, теперь баланс равен 15-12 = 3, теперь проверьте с 3-й переданной величиной 10, теперь 3 <10 верно. сохранить эту запись также во временную таблицу </p>

Можете ли вы дать какую-либо идею, чтобы решить эту проблему?

1 Ответ

2 голосов
/ 11 мая 2019

Если я правильно понимаю, вам нужны самые последние даты, совокупное количество которых в productdetails соответствует или превышает количество i product. Это совокупная сумма и join:

select pd.*
from (select pd.*,
             sum(Quantity) over (partition by ProductID       order by DateTransferred desc) as running_quantity
      from productdetails pd
     ) pd join
     product p
     on p.productid = pd.productid and
        p.quantity >= (pd.runningquantity - pd.quantity);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...