Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana cara membandingkan nilai untuk entri terakhir terakhir dan kedua dalam tabel?

SELECT  *, value - nextvalue AS diff
FROM    (
        SELECT  m.*, LEAD(value) OVER (ORDER BY date DESC) AS nextvalue
        FROM    mytable m
        ORDER BY
                date DESC
        )
WHERE   rownum = 1

Pembaruan:

Untuk memilih hasil berdasarkan perusahaan:

SELECT  value - nextvalue AS diff
FROM    (
        SELECT  m.*,
                LEAD(value) OVER (PARTITION BY companyId ORDER BY date DESC) AS nextvalue,
                ROW_NUMBER() OVER (PARTITION BY companyId ORDER BY date DESC) AS rn
        FROM    mytable m
        )
WHERE   rn = 1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menanyakan kolom gumpalan Oracle

  2. Tampilan dan tabel terwujud dengan nama yang sama

  3. Tipe data apa yang harus saya ikat sebagai parameter kueri untuk digunakan dengan kolom NUMBER (15) di Oracle ODBC?

  4. Tambahkan atau lampirkan objek json di dalam objek json objek json lain dengan plsql

  5. Oracle mengubah tabel, hak istimewa yang tidak mencukupi