Jump to content

[SOLVED] ORDER BY starting from '1'


ether
 Share

Recommended Posts

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!

Link to comment
Share on other sites

This thread is more than a year old.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.