Jump to content

[SOLVED] ORDER BY starting from '1'


ether

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
https://forums.phpfreaks.com/topic/59143-solved-order-by-starting-from-1/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.