Я работаю над базой данных MSSQL, в моем сценарии выполняется большое количество запросов на вставку, за 60 секунд почти 2000 записей вставляются через скрипт triger.ms sql переменные окружения сервера
В каждом запросе на вставку мне нужно получить некоторые данные из другой таблицы того же БД (по запросу запроса) и сделать возвращаемое значение частью запроса вставки и, наконец, запустить запрос вставки.
declare @field2 varchar(50);
set @field = select table2.field2 from table2 where productID='1';
insert into product('id','value','field2') values ('1','200',@field)
Мне нужно, чтобы выбрать все записи fields2 из table2 и сохранить его в массиве в качестве индекса (ProductID) и значения соответствующего значения только один раз. а затем сделать этот массив доступным как переменную окружения или что-то еще (доступное во всей студии управления).
Таким образом, я сохраню время обработки, чтобы выбрать поле2 каждый раз при запуске скрипта вставки. Гид для достижения этой цели будет высоко оценен.
Если ваша цель заключается в «сэкономить время обработки», вы должны задать вопрос о том, чтобы ваш запрос быстрее, а не о переменных окружения. Если это не ваша цель, действительно непонятно, о чем вы действительно спрашиваете. – dpw
Моя цель - сократить время обработки, потому что этот скрипт работает непрерывно, и каждый раз скрипт будет выбирать значение поля2 из таблицы 2 в отношении некоторого id (where clause). Я хочу, чтобы только один раз я выбирал всю запись из таблицы2 и сохранял их в массиве, тогда я использую только этот индекс ключа массива для получения релевантных данных. Я получаю значение только через вызов ключевого индекса массива. таким образом, при каждой операции вставки я буду экономить время обработки, чтобы выбрать поле2 из таблицы2. –