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

ORA-30926:tidak bisa mendapatkan set baris yang stabil di tabel sumber

Ini biasanya disebabkan oleh duplikat dalam kueri yang ditentukan dalam klausa USING. Ini mungkin berarti bahwa TABLE_A adalah tabel induk dan ROWID yang sama dikembalikan beberapa kali.

Anda dapat dengan cepat menyelesaikan masalah dengan menggunakan DISTINCT dalam kueri Anda (sebenarnya, jika 'Y' adalah nilai konstan, Anda bahkan tidak perlu memasukkannya ke dalam kueri).

Dengan asumsi kueri Anda benar (tidak tahu tabel Anda), Anda dapat melakukan sesuatu seperti ini:

  MERGE INTO table_1 a
      USING 
      (SELECT distinct ta.ROWID row_id
              FROM table_1 a ,table_2 b ,table_3 c
              WHERE a.mbr = c.mbr
              AND b.head = c.head
              AND b.type_of_action <> '6') src
              ON ( a.ROWID = src.row_id )
  WHEN MATCHED THEN UPDATE SET in_correct = 'Y';


  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 menghubungkan database Oracle dari PHP

  2. Pesanan Kustom di Oracle SQL

  3. Prosedur Tersimpan SQL Server dari Oracle®

  4. EXP() Fungsi di Oracle

  5. Karakter escape Oracle SQL (untuk '&')