Stop thinking that CE functions are more efficient.
Avoid them if you can as they don't deliver functional benefit but instead take a lot more development, documentation and maintenance time.
SQL will nearly always give you better value for effort.
Go with SQL - that's what we (SAP) also did for e.g. the whole SAP HANA live content.
And while we're at it:
Stop using 1,2,3 decision steps for your implementation decisions.
If making these decisions was actually that simple, nobody would need a developer to make them in the first place.
There simply wouldn't be a choice.