|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - [решено] скрипт для PostgreSQL |
|
Прочие БД - [решено] скрипт для PostgreSQL
|
Новый участник Сообщения: 13 |
Здравствуйте!
У меня есть следующий вопрос: как реализовать скрипт, основной задачей которого, будет: 1. поиск наибольшего значения (А) в таблице ind, столбце (index_1). 2. сохранение значения А в таблице ind, столбце (index_1). (так формируется значение В) 3. ожидание 30 минут. 4.поиск наибольшего значения (А) в таблице ind, столбце (index_1). 5. сравнение значения А и В: если А=В то удалить значения А и В из обоих таблиц если А не равно В перейти к пункту 1. Решить задачу своими силами не смог. Поиск по форуму юзал, подобной проблемы не нашел. вот раздробленные части которые написал сам используя справочники и форум: --<X> :Setvar X = select max(idx)as max_idx from rs_taxgrouptotalsitem insert into work_dpe (idx) select ide from rs_taxgrouptotalsitem where X time out/ -t 3600 :Setvar Y = select max(idx)as max_idx from rs_taxgrouptotalsitem if X=Y then DELETE FROM rs_taxgrouptotalsitem , work_dpe WHERE idx = X ; --else go to X end if Спасибо за помощь. |
|
Отправлено: 12:52, 12-08-2011 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать PostgreSQL вообще никогда не использовал, поэтому встречный вопрос - в нем есть планировщик, позволяющий выполнять задачу по расписанию? Если да, то это условие надо убрать из скрипта. Далее, можно попробовать использовать примерно такой скрипт(пишу по памяти, возможны ошибки):
1. Смотрим количество максимальных значений. :Setvar Max_count = select count(idx) as max_idx from rs_taxgrouptotalsitem having idx = max(idx) group by idx 3. Если максимальных значений больше или равно2(т.е. это случай, если мы уже находили макс. значение и вставляли его), то удаляем их. 4. Если же значение одно, то вставляем его в таблицу Все это дело в планировщик каждые 30 минут. Запускаем. Код ищет количество макс. значений. Т.к. он ни разу еще не работал и в таблице нет двух макс. значений, то код идет на вставку макс. значения в таблицу и заканчивает работу. Через 30 минут запускается, видит, что максимальных значений 2 и удаляет их, после чего заканчивает работу.Если же макс. значений всего одно, то он вставляет его дубль. В след. раз если он опять найдет 1 макс. значение, то продублирует его. Как то как вроде бы. |
------- Отправлено: 15:44, 13-08-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать спасибо помогло
|
Отправлено: 16:48, 16-08-2011 | #3 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Для спасибо есть кнопочка "Полезное сообщение" под каждым сообщением
![]() |
------- Отправлено: 18:45, 16-08-2011 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - нужен скрипт для удаления всех файлов кроме нужных для запуска Windows XP | Dark Ange1 | Скриптовые языки администрирования Windows | 11 | 07-03-2010 13:34 | |
Скрипт для смены сочетания клавишь для переключения регистра | zegerman | Хочу все знать | 2 | 03-12-2009 08:06 | |
[решено] Нужен скрипт для autoit для раскопирования файла | irk72ag | Автоматическая установка приложений | 3 | 19-06-2009 15:27 | |
MSFT SQL Server - [решено] Преобразование скрипта для Oracle в скрипт для SQL | EvgeniyQQQ | Программирование и базы данных | 3 | 25-03-2009 01:26 | |
PostgresQL во FreeBSD | Demiurg | Общий по FreeBSD | 9 | 17-07-2004 19:52 |
|