Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Funkcja rang w MySQL z klauzulą ​​Order By

Zgodnie z linkiem, który podałeś, powinno to wyglądać tak:

SELECT    a.*,
( 
            CASE a.field1 
            WHEN @curType 
            THEN @curRow := @curRow + 1 
            ELSE @curRow := 1 AND @curType := a.field1 END
          ) + 1 AS rank
FROM      table_a a,
          (SELECT @curRow := 0, @curType := '') r
ORDER BY  a.field1, a.field2 desc;

Oto 2 skrzypce, jedno dla Oracle i jedno dla mySql na podstawie przykładu z linku, który podałeś:

  1. wyrocznia
  2. MySQL



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Iteracja zestawu wyników przy użyciu JDBC for Oracle zajmuje dużo czasu, około 16 s?

  2. Wybierz ostatni wiersz dla każdej grupy z Oracle

  3. 2 sposoby na utworzenie tabeli, jeśli jeszcze nie istnieje w Oracle

  4. oracle diff:jak porównać dwie tabele?

  5. Błąd SQL Oracle LEFT JOIN i SUBQUERY:ORA-00905:brak słowa kluczowego