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

SQL:Bagaimana Anda membagi 100.000 catatan dari tabel Oracle menjadi 5 bagian?

Jika Anda hanya ingin menetapkan nilai 1-5 ke grup berukuran sama, gunakan ntile() :

select t.*, ntile(5) over (order by NULL) as num
from (select t.*
      from t
      where rownum <= 100000
     ) t;

Jika Anda ingin menyisipkan ke dalam 5 tabel yang berbeda, gunakan insert all :

insert all
    when num = 1 then into t1
    when num = 2 then into t2
    when num = 3 then into t3
    when num = 4 then into t4
    when num = 5 then into t5
    select t.*, ntile(5) over (order by NULL) as num
    from (select t.*
          from t
          where rownum <= 100000
         ) t;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana menangani transaksi besar di bawah Oracle?

  2. Oracle:apakah mungkin membuat sinonim untuk skema?

  3. Praktik desain basis data izin peran pengguna terbaik?

  4. gagal memuat ROracle:tidak dapat memuat objek bersama ROracle.so:libclntsh.so.11.1 Tidak ada file atau direktori seperti itu

  5. Delphi - mencegah injeksi SQL