ecoleman Posted May 18, 2012 Share Posted May 18, 2012 Hi, I need to sort a query by two columns, but only use the second column value if the first column is equal to 0. eg. Name | Primary Order | Secondary Order Fred | 1 | 10 Sue | 0 | 2 William | 10 | 3 Richard | 0 | 1 would ideally be sorted as (Primary Order or Secondary (If Score = 0)), name which should produce a result like Fred - (1) Richard - (1) Sue - (2) William - (10) Any help would be greatly appreciated. Thanks in advance. Link to comment https://forums.phpfreaks.com/topic/262728-help-with-sorting-please/ Share on other sites More sharing options...
Illusion Posted May 18, 2012 Share Posted May 18, 2012 CASE statement is what you need. Link to comment https://forums.phpfreaks.com/topic/262728-help-with-sorting-please/#findComment-1346562 Share on other sites More sharing options...
ecoleman Posted May 18, 2012 Author Share Posted May 18, 2012 Superb, I ended up with SELECT name from table ORDER BY CASE WHEN primary_order != '0' THEN primary_order ELSE secondary_order END and that works a treat. Thank You. Link to comment https://forums.phpfreaks.com/topic/262728-help-with-sorting-please/#findComment-1346567 Share on other sites More sharing options...
fenway Posted May 19, 2012 Share Posted May 19, 2012 I would have flipped that around, but yes. Link to comment https://forums.phpfreaks.com/topic/262728-help-with-sorting-please/#findComment-1346846 Share on other sites More sharing options...
ecoleman Posted May 19, 2012 Author Share Posted May 19, 2012 I did actually flip it around in the end Link to comment https://forums.phpfreaks.com/topic/262728-help-with-sorting-please/#findComment-1346849 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.