confused and dazed Posted May 1, 2014 Share Posted May 1, 2014 Hello internet, I am using the following calls to get an ordered list of largest to smallest info of all that row's data: *NOTE: there are only 6 entries in mydatabase with grp='c' $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 0,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 1,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 2,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 3,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 4,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects $result = mysql_query("SELECT * FROM mydatabase WHERE grp='c' ORDER BY score DESC LIMIT 5,1", $con); $rows = array();while ($row = mysql_fetch_assoc($result))...... more code to place data into a specific id to use an onload to populate objects What ends up happening is that I get a list together but here is what I get DESC LIMIT 0,1 >>> this produces the second largest score - NOT the largest DESC LIMIT 1,1 >>> this produces the third largest score DESC LIMIT 2,1 >>> this produces the fourth largest score DESC LIMIT 3,1 >>> this produces the fifth largest score DESC LIMIT 4,1 >>> this produces the sixth largest score DESC LIMIT 5,1 >>> this produces the LARGEST score - not the smallest Link to comment Share on other sites More sharing options...
justsomeguy Posted May 1, 2014 Share Posted May 1, 2014 Why in the world are you running 6 queries instead of a single one? Link to comment Share on other sites More sharing options...
confused and dazed Posted May 1, 2014 Author Share Posted May 1, 2014 Good question - There is a good answer. I need to have complete control over the names that come out of each individual row. I have it set up on my webpage so a user can click on that name and launch a very specific outcome for the name. Keep in mind that I am using an onload function to populate objects as soon as the webpage loads. This way a user can click on a a name and launch a very specific outcome. Using just one query for this limits the functionality I can place on the button object I have associated with each of the 6 names. The "DESC LIMIT" seems to sort of work but not the way I want it. Link to comment Share on other sites More sharing options...
justsomeguy Posted May 1, 2014 Share Posted May 1, 2014 I don't see any difference between what you're doing, and doing a single query with a counter to know which row you're processing, where you would do different things based on the row. It's also more efficient to send a single query. Link to comment Share on other sites More sharing options...
confused and dazed Posted May 1, 2014 Author Share Posted May 1, 2014 hmmm..... I will think on it. Link to comment Share on other sites More sharing options...
confused and dazed Posted May 1, 2014 Author Share Posted May 1, 2014 Concatenate....... Right! Doh...! 'name_' . $x So I changed my code to one query call but it still came up with the same problem... I also figured out why this was happening. When I set up score in the database I set it up as a varchar(4). What I dummy I can be sometimes! I changed it to an int(4) and everything is OK! I also went back to my previous version of my code with 6 querys and it worked there as well (having it now as an int) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now