Моя исходная таблица «T1» выглядит следующим образом:Как сохранить значение из предыдущих записей
ID Date Order_ind Var2 Var3
1 1/1/2015 1 ..... .....
1 1/5/2015 1 ..... .....
1 1/5/2015 2 ..... .....
2 1/10/2015 1 ..... .....
2 1/20/2015 1 ..... .....
2 1/20/2015 2 ..... .....
2 1/20/2015 3 ..... .....
Финальный стол, который я хочу создать добавляет дополнительную переменную «new_var» на основе некоторых критериев. Как вы можете заметить, есть записи с той же датой, и эти критерии работают только с первой записью (order_ind = 1). Для остальных записей с той же датой, таких как order_ind = 2 или 3, значение new_var должно совпадать с записью order_ind = 1.
ID Date order_ind Var1 Var2 new_var
1 1/1/2015 1 ..... ..... 1
1 1/5/2015 1 ..... ..... 0
1 1/5/2015 2 ..... ..... 0
2 1/10/2015 1 ..... ..... 0
2 1/20/2015 1 ..... ..... 1
2 1/20/2015 2 ..... ..... 1
2 1/20/2015 3 ..... ..... 1
Коды SQL, которые я написал, как эти:
SELECT *,
CASE
WHEN order_ind=1 and (criteria1....) THEN '1'
WHEN order_ind=1 and (criteria2....) THEN '0'
WHEN order_ind<>1 .......(please advise how to code this)
END AS new_var
FROM T1
;
Любая идея, как написать код для записей с order_ind <> 1?
Что такое 'aqua-data-studio'? Tag сказать, является идеей для sql .. но какая база данных? –
Почему бы вам не добавить идентификатор автоинкремента в 'T1' и использовать его для ссылки на' new_var' - намного проще. – Kenney
Ваши правила для 'new_var' arent clear, некоторые порядки 1 и 2 также' 0' –