sql
Добавлено: 23 ноя 2014, 22:36
Доброго времени суток! С SQL я не очень лажу, поэтому попрошу помощи возможно в элементарном вопросе.
Есть таблица, в одной колонке которой заполнены данными не все строки. Пустые значения нужно заполнить значениями из строки вышележащей.
Пыталась сделать это как-то так
update data.st
SET name_type=(select name_type from data.st where id<id and name_type not like ' ' order by id asc)
или так
if st.name_type not like '' then
UPDATE data.st
SET st.name_type=(select name_type from data.st where id>id order by id desc)
end if
Первый вариант все сносит вообще,а второй принципе не работает, выдает ошибку.
Использую Postgresql.
Буду благодарна за подсказку!
Есть таблица, в одной колонке которой заполнены данными не все строки. Пустые значения нужно заполнить значениями из строки вышележащей.
Пыталась сделать это как-то так
update data.st
SET name_type=(select name_type from data.st where id<id and name_type not like ' ' order by id asc)
или так
if st.name_type not like '' then
UPDATE data.st
SET st.name_type=(select name_type from data.st where id>id order by id desc)
end if
Первый вариант все сносит вообще,а второй принципе не работает, выдает ошибку.
Использую Postgresql.
Буду благодарна за подсказку!