Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Forcer une requête SQL Remote à filtrer à distance plutôt que localement

Vous pouvez également construire une chaîne et utiliser une 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]