Этот вопрос, вероятно, является вопросом софтбола для любого администратора баз данных, но вот мой вызов. У меня есть таблица, которая выглядит так:
id parent_id active
--- --------- -------
1 5 y
2 6 y
3 6 y
4 6 y
5 7 y
6 8 y
То, как работает система, над которой я работаю, должно иметь только одну активную строку на каждого родителя. Таким образом, было бы хорошо, если бы ID # 2 и # 3 были активны = 'n'.
Мне нужно выполнить запрос, который находит все строки с дубликатами parent_ids, которые активны, и переворачивает все, кроме самого высокого идентификатора, в active = 'y'.
Можно ли это сделать одним запросом или мне нужно написать скрипт для этого? (Используя Postgresql, кстати)