Пожалуйста, взгляните на скрипт ниже.Выберите последнее значение строки для нескольких строк
http://sqlfiddle.com/#!6/26b91/1
Я попытаюсь описать выход я требую первый. Я ожидаю две строки, поскольку в таблице PullPointDate
есть два условия. Несколько строк, которые находятся в таблице PullPoint
, существуют из-за данных аудита, значения аудита начинаются от 1 до 3 для условия 1 и от 1 до 2 для условия 2. Как вы можете видеть, существует множество проверок данные. Другие столбцы в полном наборе данных, очевидно, меняются, но я не включил их здесь, поскольку они не актуальны. Излишне говорить, что они могут быть (n) условиями и связанными данными изменения аудита контрольной точки.
Колонна
CondNumber, StudyCode, PullPeriod, PullUnit
1 , SS3105 , 52 , Weeks
2 , SS3105 , 24 , Weeks
Остальные строки в таблице PullPoint
не должна фигурировать в результатах, поскольку они имеют более старую менее AuditNumber
т.е. чем последняя AuditNumber
.
Я довольно долго боролся с этим. Мой ум изо всех сил пытается мыслить на основе набора. Вложенная Row_Over, Partition By и т. Д., Я разрывается в холодных потах.
Как достичь этого, ближайший я мог бы получить, была одна строка, выглядящая идеально, но другое значение было нулевым из-за того, что я делал предложение where на номере аудита и из-за того, что оба условия были разными, были возвращены только одна строка данных ,
Спасибо
больше информации я постараюсь предоставить.
Я поставил ссылку на последнюю скрипку из комментариев в вопрос и изменил теги вопрос , потому что вопрос связан с SQL-запросом, а не с инструментом SQL Fiddle. Измените ожидаемый результат в вопросе, чтобы он соответствовал последним образцам выборки. –