Итак, я недавно обнаружил, что вы можете передавать параметры с помощью EXEC AT в SQL на связанный сервер, такой как Oracle.
Я собрал запрос и проверил сначала без параметров
EXEC ('SELECT RD6001 as Referencia,
RD6002 as UAP,
RD6030 as QTD_AB_PDP_W01
FROM D805DATPOR.TRP060D
where RD6001 not like ''%OP%''
and RD6001 not like ''%PT%'' ')
AT MACPAC
однако это займет около 45 секунд, чтобы получить 2k строк ....
Если я запускаю
SELECT * FROM OPENQUERY(MACPAC,
'SELECT RD6001 as Referencia,
RD6002 as UAP,RD6030 as QTD_AB_PDP_W01
FROM D805DATPOR.TRP060D
where RD6001 not like ''%OP%''
and RD6001 not like ''%PT%'' ')
, это занимает максимум 2-3 секунды, и если я запускаю запрос EXEC ATпосле этого требуется 1 секунда.Почему скорость EXEC AT в начале отличается?