以下の例では、関数をプッシュダウンできない場合のQuery Plansを対比しています。右の列では、クエリプランに余分なステップが表示されます。データソースが MD5 関数をサポートしていないため、このような余分な手順が発生します。CData Virtuality はMD5 機能の不足を内部実装で補いました。
Example 1: Pushdown supported
SELECT
md5(
"Name"
)
FROM
"mssql_advworks_2019.AdventureWorks2019.HumanResources.Shift"
;;
SELECT
md5(g_0.
Name
)
FROM
mssql_advworks_2019.AdventureWorks2019.HumanResources.Shift
AS
g_0
Example 2: Pushdown NOT supported
SELECT
md5(
"salespersonid"
)
FROM
"no_pushdown.SalesOrderHeader_ALL"
;;
md5(no_pushdown.SalesOrderHeader_All.salespersonid)
SELECT
no_pushdown.SalesOrderHeader_All.salespersonid
FROM
no_pushdown.SalesOrderHeader_All