У меня есть таблица результатов Competitions
, которая содержит имена членов команды и их рейтинг с одной стороны.
С другой стороны, мне нужно поддерживать таблицу уникальных имен конкурентов:
CREATE TABLE Competitors (cName nvarchar(64) primary key)
Теперь у меня есть около 200 000 результатов в 1-й таблице и , когда таблица конкурентов пуста. Я могу выполнить это:
INSERT INTO Competitors SELECT DISTINCT Name FROM CompResults
И запрос занимает всего около 5 секунд, чтобы вставить около 11 000 имен.
Пока это не критическое приложение, поэтому я могу рассмотреть обрезать таблицу конкурентов один раз в месяц, когда получаю новые результаты конкурса с примерно 10 000 строк.
Но какова наилучшая практика при добавлении новых результатов с новыми И существующими конкурентами? Я не хочу урезать таблицу существующих конкурентов
Мне нужно выполнить инструкцию INSERT только для новых конкурентов и ничего не делать, если они существуют.