Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Selecione linhas exclusivas, de acordo com o valor em uma coluna secundária


Você provavelmente precisa disso:
SELECT
  MIN(id) id,
  code,
  MIN(product_name) product_name,
  MIN(supplier) supplier
FROM
  yourtable
WHERE
  (code, CASE WHEN supplier='Supplier1' THEN '' ELSE supplier END)
  IN (SELECT   code, min(CASE WHEN supplier='Supplier1' THEN '' ELSE supplier END)
      FROM     yourtable
      GROUP BY code)
GROUP BY
  code
ORDER BY
  min(id);

Por favor, veja violino aqui .