Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Forzare una query remota SQL per filtrare in remoto anziché in locale

Potresti anche costruire una stringa e usare un openquery ...

set @sqlString =
 ' select into myTable from openquery
    (remoteServer,
        "SELECT * FROM Database.dbo.RemoteView WHERE EntryDate > %DTSTART"
    )
 '

set @sqlString  = 
    replace(@sqlString, '%DTSTART', 
                        (select cast(dbo.MyCustomCLRDateFunction() as char(8)) 
           )

EXECUTE sp_executesql @[email protected]