Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Uzyskaj aktualną pozycję za pomocą mysql

Możesz to zrobić za pomocą podzapytania:

select count(*) as rank
from users u
where u.ammopacks >= (select ammopacks from users u2 where u2.id = x)

To nie robi dokładnie tego samego. Spowoduje to prawdziwy ranking, w którym użytkownicy o tej samej wartości ammopacks będzie miał taką samą rangę. W tym przypadku oryginał dałby różnym użytkownikom różne wartości sekwencyjne.

Aby uzyskać ten efekt, możesz:

select count(*) as rank
from users u
where u.ammopacks > (select ammopacks from users u2 where u2.id = x) or
      (u.ammopacks = (select ammopacks from users u2 where u2.id = x) and
       u.id <= x
      )



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Synchronizowanie bazy danych SQLite ze zdalnymi danymi mysql w systemie Android

  2. MySQL - kod błędu 1215, nie można dodać ograniczenia klucza obcego

  3. Jak zbudować silnik „powiązanych pytań”?

  4. Jak wybrać wiele wierszy z mysql za pomocą jednego zapytania i użyć ich w php

  5. SQL:Wybierz najnowszy wątek i najnowszy post, pogrupowane według forum, uporządkowane według najnowszego posta