sql >> Databasteknik >  >> RDS >> Mysql

Välj unika rader, enligt värde i en sekundär kolumn

Du behöver förmodligen detta:

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);

Se fiolen här .



  1. SQL Server returnerar fel Inloggning misslyckades för användaren 'NT AUTHORITY\ANONYMOUS LOGON'. i Windows-applikationen

  2. PostgreSQL-uppdateringar med flera rader i Node.js

  3. Hur kan jag meddela mitt program när databasen har uppdaterats?

  4. Ändra schema för flera PostgreSQL-funktioner i en operation?