Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm cách nào để so sánh các giá trị cho mục nhập cuối cùng và mục nhập cuối cùng thứ hai trong bảng?

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

Cập nhật:

Để chọn kết quả phù hợp với công ty:

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. php:loading trình điều khiển oracle báo lỗi Không thể tải thư viện động - Không thể tìm thấy quy trình đã chỉ định.

  2. Sửa đổi giá trị nút XML- UpdateXML tương đương cho Oracle 12c

  3. script lấy dữ liệu từ tệp txt trong mệnh đề where

  4. Không thể truy cập trường thông qua chế độ ngủ đông trên cơ sở dữ liệu oracle trên các không gian người dùng khác nhau chỉ với các đặc quyền được chọn

  5. Chuyển đổi chữ số / số bằng từ sang tiền tệ INR (Rupee Ấn Độ) trong Oracle PL / SQL