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

wybierz dwa ostatnie wiersze dla każdego użytkownika, aby uzyskać różnicę w kolumnie (MySQL)

Musisz to poprawić, ale w zasadzie tak to robisz. możesz użyć samodołączenia

SELECT uid, MAX(myvalue)-MIN(myvalue) AS diff FROM
    (SELECT a.* FROM tablename AS a
        LEFT JOIN tablename AS a2
            ON a.uid=a2.uid AND a.myvalue<=a2.myvalue
        GROUP BY uid,myvalue
        HAVING COUNT(*)<=2
    ) a
GROUP BY uid



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uzyskiwanie dostępu do tablicy w tablicy PHP

  2. Zapytanie SQL do utworzenia bazy danych w MySQL

  3. MySQL JOIN / GROUP_CONCAT druga tabela?

  4. Jak ograniczyć użycie formularza lub ograniczyć dostęp?

  5. Jak znaleźć lokalizację MySQL my.cnf?