以下の例では、関数をプッシュダウンできない場合の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