Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 как реализовать такое ?  [new]
beast123
Guest
есть задачка сделать отчет (селект)
в котором при включении определенного параметра
результаты должны записываться в некоторую таблицу
при том, если в этой таблице уже есть аналогичные данные,
они должны перезатираться.
т.е. если в таблице уже есть запись с id=99, а
селект тоже вернул id=99, то запись из таблицы
должна удалиться, а на её место вставляется то,
что вернул селект

подскажите как лучше реализовать ?

мне пришло на ум только
сделать временную таблицу,
скидывать туда данные селекта
по ним выдавать отчет
потом проверять параметр (after report), если включен
то писать в конечную таблицу

также, подскажите, что лучше
delete+insert или merge
19 мар 09, 12:26    [6948299]     Ответить | Цитировать Сообщить модератору
 Re: как реализовать такое ?  [new]
beast123
Guest
beast123


подскажите как лучше реализовать ?



в смысле, есть ли альтернативные варианты ?
19 мар 09, 12:27    [6948312]     Ответить | Цитировать Сообщить модератору
 Re: как реализовать такое ?  [new]
MazoHist
Guest
Хм... а что должно происходить с данными, которые получены при прошлом выполнении отчета? Они должны выводиться в "этот" раз? Если нет - truncate и пёс бы с ними. Или текущие данные считаются на основании прошлых выполнений?
19 мар 09, 12:37    [6948379]     Ответить | Цитировать Сообщить модератору
 Re: как реализовать такое ?  [new]
beast123
Guest
MazoHist
Хм... а что должно происходить с данными, которые получены при прошлом выполнении отчета? Они должны выводиться в "этот" раз? Если нет - truncate и пёс бы с ними. Или текущие данные считаются на основании прошлых выполнений?


сам отчет (селект) идет по другим таблицам.

таблицу в которую скидываются данные
будут использовать другие проги
19 мар 09, 12:51    [6948515]     Ответить | Цитировать Сообщить модератору
 Re: как реализовать такое ?  [new]
Captain Gizmo
Member

Откуда: Киев
Сообщений: 8
beast123

также, подскажите, что лучше
delete+insert или merge


из задачи непонятно, чем не устраивает merge, он же upsert
почему нужно удалять, а не апдейтить? чтобы id поменялся?
19 мар 09, 13:12    [6948649]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить