Импортировать данные из электронной таблицы в базу данных без первичного ключа - PullRequest
0 голосов
/ 02 августа 2020

У меня есть файл электронной таблицы с 1500 строками, и этот файл обновляется один раз в день. Вся информация в этом файле должна храниться в таблице, а в файле электронной таблицы нет первичного ключа.

Мне нужно прочитать заголовок строки один за другим, а затем выполнить запрос, чтобы найти первичный ключ и, наконец, сохранить данные. Разве не лучше, если первичный ключ совпадает с заголовком данных для уменьшения 1500 запросов на поиск первичного ключа?

1 Ответ

1 голос
/ 03 августа 2020

Перед тем, как вы должны поместить все строки электронной таблицы в промежуточную таблицу.

После того, как вы сможете сделать INNER/LEFT JOIN с финальной таблицей. Ниже пример этого:

—-for existing rows
SELECT S.*
FROM 
    dbo.STAGING S
    INNER JOIN dbo.TABLE T ON T.ID = S.TITLE

—-for new rows
 SELECT S.*
 FROM 
     dbo.STAGING S
     LEFT JOIN JOIN dbo.TABLE T ON T.ID = S.TITLE
 WHERE
     T.ID IS NULL
 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...