Thank you very much, Benjamin for reading my article and code.
That's a fair point, and I should clarify the intent. The goal of the comparison wasn't to isolate SQL engine performance, but to measure end-to-end data extraction into a pandas DataFrame, including any required transformation steps.
In the Dynamic SQL case, the result is exposed as %DynamicObject, and I didn't find a way to materialize that into a DataFrame without iterating through it. The other approaches also iterate through their result sets, so the timings reflect the full path from query result into DataFrame, not just SQL execution.
I agree that labelling this as "Dynamic SQL vs IRIS SQL" can be misleading if read as a statement about SQL performance alone, and I'll adjust the wording to make that distinction clearer.
Thank you very much, Benjamin for reading my article and code.
That's a fair point, and I should clarify the intent. The goal of the comparison wasn't to isolate SQL engine performance, but to measure end-to-end data extraction into a pandas DataFrame, including any required transformation steps.
In the Dynamic SQL case, the result is exposed as %DynamicObject, and I didn't find a way to materialize that into a DataFrame without iterating through it. The other approaches also iterate through their result sets, so the timings reflect the full path from query result into DataFrame, not just SQL execution.
I agree that labelling this as "Dynamic SQL vs IRIS SQL" can be misleading if read as a statement about SQL performance alone, and I'll adjust the wording to make that distinction clearer.