Я новичок в SQL сервере, не могли бы вы помочь мне написать запрос для моего сценария?
У меня есть это Table1
:
PostingDate ReturnCheckReason PaymentStatus PolicyNumber
----------------------------------------------------------------
7/23/2020 15:30 Null Payment 1234
8/6/2020 17:40 Null Payment 1234
8/4/2020 14:29 Null Payment 1234
8/5/2020 6:09 Null Payment 1234
8/5/2020 12:47 Cancel Payment Return 1234
Вход в мои сохраненные процедура - это PolicyNumber
, например, 1234, и код должен возвращать 5 строк.
Мне нужно покрыть эти случаи:
Если первый платеж не отменен, я необходимо вернуть эту строку.
Если первый платеж отменен, найдите следующий неотмененный платеж. Если будет обнаружен следующий платеж, который не был отменен, мне нужно вернуть эту строку.
Мой вопрос: я думаю, что мне нужно oop все данные для этой политики до Я получил неотмененный платеж, пожалуйста, дайте мне знать, как это сделать.
SELECT TOP 1
[PolicyNumber],
[PostingDate],
[PaymentStatus]
FROM
[dbo].[Bil_PaymentSearch] WITH (NOLOCK)
WHERE
(PolicyNumber = @PolicyNumber) AND
(ReturnCheckreason <> 'Cancel payment') AND
(PaymentOrReturn <> 'Return')
ORDER BY
PostingDate ASC