forums › forums › SQLyog › SQLyog: Bugs / Feature Requests › Limit Resultset In Sqlyoq
- This topic is empty.
-
AuthorPosts
-
-
December 21, 2009 at 10:24 pm #11801HawkeyMember
Hi, I have a stupid question – I haven't found the place in SQLYoq, where I can limit number of rows in result window. I don't want to use limit 100 in query, I want process all rows but only 100 rows to see in result window. I have looked into preferences, but changing data display settings hasn't any effect. Is there some way? Thanks, Andrew
-
December 22, 2009 at 4:57 am #30210navyashree.rMember
Hey Hawkey,
You have posted in wrong category. I am moving this topic to “SQLyog: Bugs/Feature Requests”. Please always post in right section.
-
December 22, 2009 at 5:37 am #30211navyashree.rMember
Hi Hawkey,
Thank you for your request.
We have been added your request in our issue tracker,
http://code.google.com/p/sqlyog/issues/detail?id=1216
We have decided that we will give a “Page wise retrieval mechanism for Result Tab exactly similar to our Table data tab”. We will automatically modify all SELECT queries to include a LIMIT clause if they don't have a LIMIT clause already.
We are building this feature in 8.3 Beta and you can expect this to be available in next 4 weeks.
Regards,
Navya
-
December 22, 2009 at 1:27 pm #30212HawkeyMember
Hi,
I'm not sure adding limit to every query is clever thing, limit clause changes execution of query. I try some comparison the same statement of query on Oracle and on MySQL, for Oracle I have a client PL/SQL developer and there is possibility show only first 100 rows… but the query makes all work, not only for first 100 rows. When I use Profiling in SQLyog, I see duration time of sending data to client 2x smaller then in Oracle. But I don't believe it, I thing that SQLyoq shows only some rows and the rest reads from buffer in library. But the Sending time is only for small part of the resultset. Sorry, I have filled in the title of my question word LIMIT and your association was correct, so I repair my question : is some possibility in SQLyog to execute all query but in result window see only 100 first rows ?
Hawkey
-
December 22, 2009 at 2:46 pm #30213peterlaursenParticipant
“is some possibility in SQLyog to execute all query but in result window see only 100 first rows ?”. Short answer is NO.
You have a very valid point that adding a LIMIT transparently for user may lead to misleading PROFILING results. That we will have to consider with the implementation.
-
December 22, 2009 at 4:31 pm #30214HawkeyMember
Thank you very much, your answer is very helpful for me.. better to know that it's impossible then think about it. So is there any other possibility – retrieve all resultset in real time without buffering and then see some real time about Sending data in Profiling? I know, there is some parameter on MySQL Server for switch-off buffering, will it work with SQLyog? Thank you, Hawkey
-
December 22, 2009 at 4:40 pm #30215peterlaursenParticipant
You can SET SESSION|GLOBAL VARIABLES from any client (if user has privilege). But I do not know what buffer you are referring to. If it is Query Cache you can use SQL_NOCACHE in the query.
-
December 22, 2009 at 4:57 pm #30216peterlaursenParticipant
And “then see some real time about Sending data in Profiling?”. If I understand what you mean it is not possible with MySQL.
The server has no support for retrieving profiling, debugging etc. data in 'real time' On the opposite the MySQL client/server protocol is not multithreaded. There is one thread on the server for each connection. When a client has sent the a query it has to wait for the result (or an error) to be returned. The client can only wait for response once it has sent a query to the server. Having multiple queries running at a time for a single connection is not possible. And one connection cannot retrieve such information about other connections. There is no such API providing internals about such MySQL server internals (for debugging, measuring or whatever) while query is running. We can only retrieve differences of server variables, Information_Schema etc. content before and after executing only and compare.
You can see in HISTORY tab what queries actually send to retrieve all PROFILING results. Try a plain query with profiling OFF and compare with one or more profiling options ON. Note than ONE query finishes and next we execute another one.
I wonder if you you have a SQL Server background?
Anyway I still do not understand what you want to do and why.
-
December 22, 2009 at 8:33 pm #30217HawkeyMember
Hi Peter, you are righ. MySql client/server is half duplex, so without clause LIMIT client gets all resultset. Thanks, Hawkey
-
February 19, 2010 at 4:35 am #30218navyashree.rMember
Hi,
We have released SQLyog 8.3 Beta1 with this feature, which is available publicly!
“In RESULT tab results can now be retrieved page-wise. This is ON as default with this build with a defined LIMIT of 1000 rows. For a specific query/resultset user can change and for specific combination of query, database and table the setting is persistent across sessions.”
Also please go through 'miscellaneous' in the link given below.
Please refer to:
http://www.webyog.com/blog/2010/02/18/sqlyog-mysql-gui-8-3-beta-1-has-been-released/
Thank you.
Regards,
Navya
-
-
AuthorPosts
- You must be logged in to reply to this topic.