ether Posted July 9, 2007 Share Posted July 9, 2007 SELECT f.`frid` , f.`order` , f.`friendId` , u.`usLogin` FROM `friends` AS f LEFT JOIN `users` AS u ON f.`friendId` = u.`usId` WHERE f.`usId` = '5' ORDER BY f.`order` ASC LIMIT 0 , 30 This returns everything correctly, however. The field that I'm ordering by, `order`, has a NULL value by default so it brings ALL of the NULL values first, and then orders ASC on `order`. e.g. NULL NULL NULL 1 2 3 I know I can add to my WHERE clause with something like "AND `order` != NULL" but I _want_ records with a NULL value to show up, but just to be sorted to the bottom of the list when ORDERing BY. So really I want the ORDERing to start with '1'... I'm pretty sure I can use a PHP function, but I just cant seem to figure out which and I'd prefer to do it with SQL if possible. Thanks! Quote Link to comment https://forums.phpfreaks.com/topic/59143-solved-order-by-starting-from-1/ Share on other sites More sharing options...
Wildbug Posted July 9, 2007 Share Posted July 9, 2007 There's a solution somewhere in the MySQL manual user comments. It's something to the effect of using "... ORDER BY -order DESC" and will put the NULLs at the bottom of an ascending list. Quote Link to comment https://forums.phpfreaks.com/topic/59143-solved-order-by-starting-from-1/#findComment-293766 Share on other sites More sharing options...
bubblegum.anarchy Posted July 10, 2007 Share Posted July 10, 2007 This is what I do: SELECT * FROM repository ORDER BY sort_column IS NULL, sort_column Quote Link to comment https://forums.phpfreaks.com/topic/59143-solved-order-by-starting-from-1/#findComment-294162 Share on other sites More sharing options...
ether Posted July 10, 2007 Author Share Posted July 10, 2007 bubblegum.anarchy: Thanks! That seemed to of work Quote Link to comment https://forums.phpfreaks.com/topic/59143-solved-order-by-starting-from-1/#findComment-294273 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.