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

Apa yang dimaksud dengan pendahuluan di Oracle?

Anda jelas menanyakan tabel T dengan kolom WIN_30_DUR , AGENT_MASTER_ID dan ROW_DT (diantara yang lain). Perlu diingat bahwa kata kunci seperti OVER , PARTITION menunjukkan Anda menggunakan permintaan analitis:permintaan tersebut memungkinkan Anda untuk mendapatkan informasi tentang baris saat ini dari yang lain, yang akan rumit dan panjang untuk ditulis dengan GROUP BY atau klausa "standar" lainnya.

Di sini, pada baris tertentu, Anda:

  • grup (PARTITION ) oleh AGENT_MASTER_ID :ini mendapatkan semua baris T dengan AGENT_MASTER_ID saat ini
  • di partisi yang membentuk anda ORDER baris menurut ROW_DT
  • pengurutan ini memungkinkan Anda memilih 30 baris sebelum ROW_DT saat ini :ini adalah arti dari PRECEDING kata kunci (0 akan memilih baris saat ini, kebalikannya adalah FOLLOWING klausa)
  • kemudian Anda melakukan penjumlahan pada WIN_30_DUR lapangan

Dalam bahasa biasa, ini berarti sesuatu seperti:untuk setiap agen, ambil jumlah durasi dari 30 hari sebelumnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle menganggap string kosong sebagai NULL sementara SQL Server tidak - bagaimana cara terbaik menangani ini?

  2. Ingin membuat nomor seri

  3. Untuk apa Hibernate memetakan tipe data boolean saat menggunakan database Oracle secara default?

  4. Oracle Database BLOB ke InputStream di Jawa?

  5. SQL:sisipkan baris dengan nilai yang diringkas