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

MySQL odpowiednik ORACLES rank()

Nic nie jest bezpośrednio odpowiednikiem, ale możesz to sfałszować za pomocą niektórych (niezbyt wydajnych) łączeń. Przykładowy kod ze zbioru poradników dotyczących zapytań MySQL:

SELECT v1.name, v1.votes, COUNT(v2.votes) AS Rank
FROM votes v1
JOIN votes v2 ON v1.votes < v2.votes OR (v1.votes=v2.votes and v1.name = v2.name)
GROUP BY v1.name, v1.votes
ORDER BY v1.votes DESC, v1.name DESC;
+-------+-------+------+
| name  | votes | Rank |
+-------+-------+------+
| Green |    50 |    1 |
| Black |    40 |    2 |
| White |    20 |    3 |
| Brown |    20 |    3 |
| Jones |    15 |    5 |
| Smith |    10 |    6 |
+-------+-------+------+ 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak określić klauzulę IN w zapytaniu dynamicznym przy użyciu zmiennej?

  2. Co oznacza <> w Oracle?

  3. Poznaj historię zapytań SQL

  4. Tabele zewnętrzne Oracle

  5. Podziel wartości oddzielone przecinkami w kolumnie w wierszu za pomocą zapytania Oracle SQL