У меня есть таблица Rep со следующими полями:TSQL - Выбор строки, в которых значение столбца изменилось
Там могут быть изменения в RepNbr. Мне нужно написать запрос, который показывает, что такое repnbr для каждого effectivedate. То, что было раньше, а затем, когда произошли изменения. Итак, я пытаюсь вытащить сообщение M258 на 10/21 (что было раньше), repmbr DM25 на 6/3/16 и то, что было в M258 на 6/8/16.
Я пробовал следующий запрос: этот запрос только вытягивает эффект 6/3 и 6/8 и не оглядывается назад на то, что было repnbr ранее.
;with t1 as
(
select
acctnbr,
repnbr,
effectivedate,
rn = row_number() over (partition by repnbr order by acctnbr)
from
reptable
where
acctnbr = '123'
)
select
*
from
t1
where
rn = '1'
order by
effectivedate
Результаты:
Мой результат должен выглядеть следующим образом:
Что я делаю не так с моим запросом? Спасибо,
как должен результат выглядит? –
'Я пытаюсь вытащить repnbr из M258 на 10/21' - я не нахожу ссылки на это в вашем коде – techspider
все, что вы сделали, исключает одну строку данных ... и вы собираетесь хотите разбить Acct, EffectiveDate, чтобы вы получили по одной записи для каждой учетной записи за каждую эффективную дату. Поскольку ваши строки уникальны, все это кажется тривиальным. Возможно, ваш реальный набор данных продемонстрирует лучший пример. – scsimon