Как и в случае любой проблемы с производительностью, измерьте ваш конкретный вариант использования.
Документация для sqlite3_get_table
говорит следующее:
Эта следующая процедура на самом деле является просто оболочкой для sqlite3_exec ().
Вместо вызова предоставленного пользователем обратного вызова для каждой строки
результат, эта подпрограмма запоминает каждую строку результата в памяти
полученный из malloc (), затем возвращает весь результат после
запрос завершен.
Таким образом, можно предположить, что sqlite3_get_table
работает хуже, если только обработка, выполняемая с sqlite3_exec
напрямую, не похожа. Насколько они на самом деле различаются и значительна ли разница, зависит от измерений ваших данных и вашего кода.