У меня запланированный процесс AM на SQL Server 2008, который импортирует данные из Oracle, используя связанный сервер. Я перезаписываю импортированные данные из Oracle, используя таблицу перетаскивания, затем выбираю в шаблон
Видимо, наличие "заказа по" влияет на мой конечный результат! Посмотри.
--This works fine to give me the one row I'm expecting from the newly imported table:
drop table t1;
SELECT * into t1 fROM OPENQUERY(ODBC_CSRPT,'
select
EXTERNAL_ORGANIZATION_ID
,ORGANIZATION_DESC
,STATE
from sysadm.uv_CS_EXTERNAL_ORGANIZATIONS
order by EXTERNAL_ORGANIZATION_ID asc ');
go
select * from t1
where external_organization_id = '1000107'
go
Но это (ниже) не возвращает строк. Мой orgId 1000107 сейчас отсутствует?
drop table t1;
SELECT * into t1 fROM OPENQUERY(ODBC_CSRPT,'
select
EXTERNAL_ORGANIZATION_ID
,ORGANIZATION_DESC
,STATE
from sysadm.uv_CS_EXTERNAL_ORGANIZATIONS ');
go
select * from t1
where external_organization_id = '1000107'
go
Как видите, единственное, что изменилось, - это наличие порядка по предложению. Другой трюк заключается в том, что связанный запрос к серверу возвращает одинаковое количество строк (точнее, 51 225 строк), независимо от того, существует «order by». Есть идеи?