poe Posted October 16, 2007 Share Posted October 16, 2007 i have a db like: id - paid - type 1 - 7 - a 2 - 15 - c 3 - 0 - b 4 - 6 - a 5 - 0 - c 6 - 4 - b 7 - 0 - a where 'id' is record number, and 'paid' is id number from transaction table, and type is the product bought (a, b, or c) so if payed is = 0, then that record has not payed. i want to sort my results by (paid / unpaid), then by type. but if i go SELECT id, paid, type FROM table ORDER BY paid ASC, type ASC this will get me: id - paid - type 7 - 0 - a 3 - 0 - b 5 - 0 - c 6 - 4 - b 4 - 6 - a 1 - 7 - a 2 - 15 - c as you can see it sorts the (paid/not paid) ok, but has trouble sorting the (type) is there a way i can do something like: SELECT id, paid, type, ((paid>0)?1:0) as paidsort FROM table ORDER BY paidsort ASC, type ASC Quote Link to comment https://forums.phpfreaks.com/topic/73424-if-statement-in-a-select/ Share on other sites More sharing options...
fenway Posted October 16, 2007 Share Posted October 16, 2007 Yes... use IF( paid >0, 0, 1 ) Quote Link to comment https://forums.phpfreaks.com/topic/73424-if-statement-in-a-select/#findComment-370664 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.