I have a table with 4 columns Table name = products Column name = product_id, product_programname, product_title, model_number When I use GROUP BY with model_number, it alway returns me the info of product (ebay) which comes first in the queue. But i want to get the title from 'argos' if not null else 'buy' if not null etc. The below query doesn't works for me. SELECT *, ( case(true) WHEN product_programname = 'argos' AND product_programname IS NOT NULL THEN product_title WHEN product_programname = 'buy' AND product_programname IS NOT NULL THEN product_title WHEN product_programname = 'amazon' AND product_programname IS NOT NULL THEN product_title WHEN product_programname = 'ebay' AND product_programname IS NOT NULL THEN product_title WHEN product_programname = 'next' AND product_programname IS NOT NULL THEN product_title END ) as final_title FROM products GROUP BY model_number Code (markup): Please assist how come it'll be possible.