On Wed, 14 Sep 2016 16:27:37 +0530 SinhaK <sinha.shailend...@gmail.com> wrote:
> strlen(MyString.str().c_str()) BTW, as a matter of style, MyString.str().size() gets you to the same place sooner. > MyString<<"select TokenNo,Price ,sum(QTY) from 'Stream0' where > TokenNo=?1 and Side=66 group by Price order by Price desc limit 5"; You should group by TokenNo, Price. You should not have 'Stream0' in single quotes; that makes it a string. But I agree with Teg: SQLite is providing you with transactions you don't need, and puts an interpreted language exactly where you don't want it: in a performance-critical spot. The C++ standard library has all the bits you need, and is almost as convenient to use. You have only one table, and probably just a few simple queries. std::set gives you lower_bound and upper_bound. Hand those two iterators to std::accumulate, and you have GROUP BY. Call that for 5 prices. Not very much code, and I bet 100x faster than SQL. If more than one thread is updating the table, obviously protect your set with a mutex. --jkl _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users