![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Дополнить таблицу
Я_Чайник © (2002-06-20 06:10:00)Необходимо добавить в Table1 данные из Table2, которых нет в Table1.
Пробовал select .... from table1 Where
fileld not in (select field from Table2).
Тормозит сильно.
Fishka (2002-06-20 09:31:00) [1]Может быть, убрать insert into table1.А потом результат запроса c помощью BATCHMOVE добавить в таблицу.Будет, наверное, чуть быстрее.
И еще: попробуйте использовать в запросе not exists вместо not in. Хотя, это вряд ускорит запрос, а может и затормозит его еще сильнее.....
DarkGreen (2002-06-20 09:22:00) [2]Хм... Запрос наверняка на локале выполняется, т. е. средствами БДЕ. Следовательно он будет тормозить в любом случае. Проще такие вещи решать с помощью обыкновенной навигации и индексов .
Я_Чайник (2002-06-20 09:20:00) [3]Я использую MS Access. Запрос скопирован из его конструктора.
Насколько я понимаю Access сам создает свои индексы
dimis (2002-06-20 09:14:00) [4]Я_Чайник:
еще несколько вопросов
1.какая СУБД используется?
такой запрос ты не мог составить - синтаксис совершенно не верен в конструкции insert -select не используется-код выдаст ошибку
если уж это проходит, то я пас
2.какой объем базы?
попробуй ввести индексы
Я_Чайник (2002-06-20 08:35:00) [5]Секунд 30-40.
И это для добавления 2-3 записей
VAleksey (2002-06-20 07:43:00) [6]сильно это как ?
Я_Чайник (2002-06-20 06:30:00) [7]Извините, код выгдядит так:
insert into table1
select .... from table2 Where
table2.field not in (select Table1.field from Table1).