Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2011.02.20;
Скачать: [xml.tar.bz2];

Вниз

Помогите оптимизировать скрипт   Найти похожие ветки 

 
harisma ©   (2009-09-17 15:36) [0]

Существует 2 базы с набором таблиц одинаковой структуры.
Обе базы имеют некоторые данные в этих таблицах.
Необходимо из одной таблицы одной базы добавить в такую же таблицу другой базы недостающие записи.
На этой таблице стоит уник констрейт на поле Name. Примари кей установлен на поле RECID. Это поле неавтоинкрементное. Соответственно получается следующий скрипт:


INSERT INTO [base2].DBO.LISTVIEW
 SELECT * FROM [base1].DBO.LISTVIEW AS OLD
 WHERE NOT OLD.RECID IN (SELECT RECID FROM [base2].DBO.LISTVIEW)
 AND NOT OLD.NAME IN (SELECT NAME FROM [base2].DBO.LISTVIEW)


Вот можно ли как-то оптимизировать условие WHERE?

Спасибо заранее.


 
Anatoly Podgoretsky ©   (2009-09-17 15:55) [1]

Какой вопрос по Дельфи, а не по MSSQL?


 
Palladin ©   (2009-09-17 16:19) [2]

оптимизация SQL запросов проивзодится на уровне БД


 
sniknik ©   (2009-09-17 16:20) [3]

INSERT INTO LoacalBase.DBO.LISTVIEW
 SELECT o.*
 FROM OutBase.DBO.LISTVIEW AS o
 LEFT JOIN LoacalBase.DBO.LISTVIEW AS l
 WHERE l.RECID IS NULL

должно быть быстрее, насколько это вообще возможно, с таким подходом. тянуть из другой базы всю, возможно не маленькую... таблицу ради вставки пары записей...
лучше уж определить что то вроде точки отсчета (автоинкремент/время) и запрашивать только после нее, т.е. ту часть которая точно не существует в этой базе. ну и сохранять ее естественно при переносе очередной "порции".


 
stas ©   (2009-09-17 16:27) [4]

А я чего-то непонял в новой таблице IDREC и NAME не соответствуют старой.
т.е. в новой IDREC 10 NAME ДЯДЯ ВАСЯ
и в старой IDREC 10 NAME ТЕТЯ МАША?
Тогда какими данными мы дополняем?



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2011.02.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
2-1291131119
Василич
2010-11-30 18:31
2011.02.20
Вопрос по TWordApplication.


15-1289457371
Nickolay
2010-11-11 09:36
2011.02.20
Полиморфизм


2-1289572277
Vidog
2010-11-12 17:31
2011.02.20
Прозрачность


2-1290762980
axels
2010-11-26 12:16
2011.02.20
gecko browser


15-1289312897
hattak
2010-11-09 17:28
2011.02.20
Как отследить события в Internet Explorer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский