sql >> Databáze >  >> RDS >> Oracle

SQL – vrátí řádky s většinou odpovídajících sloupců

K tomu můžete použít funkci rank():

SQLFiddle

select name, color1, color2, color3, prize 
  from (
    select t.*, rank() over (order by decode(color1, 'Red', 1, 0) 
        + decode(color2, 'Blue', 1, 0) + decode(color3, 'Green', 1, 0) desc) rnk
      from t)
  where rnk = 1

Tím se vrátí řádek nebo řádky s většinou shod.



  1. Jak mohu použít JDBC ke kopírování schématu z jedné databáze do druhé bez použití Apache DDLUtils?

  2. Regulární výraz Oracle nahrazuje více výskytů řetězce ohraničeného čárkami

  3. MYSQL ON DUPLICATE KEY UPDATE se neaktualizoval

  4. Návrh databáze pro uložení barevného vzoru obrázku v MySQL pro vyhledávání obrázku podle barvy