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

Mencoba menghapus dari beberapa tabel menggunakan SQL

delete hanya dapat menangani satu tabel dalam satu waktu, jadi Anda memerlukan tiga pernyataan:

DELETE FROM upklist 
WHERE  session_id = (SELECT session_id 
                     FROM   usession 
                     WHERE  delete_session_id IS NULL 
                            AND user_id = (SELECT user_id 
                                           FROM   users 
                                           WHERE  REGEXP_LIKE(USER_NAME, 
                                                  'awpeople', 'i'))); 

DELETE FROM projshar 
WHERE  session_id = (SELECT session_id 
                     FROM   usession 
                     WHERE  delete_session_id IS NULL 
                            AND user_id = (SELECT user_id 
                                           FROM   users 
                                           WHERE  REGEXP_LIKE(USER_NAME, 
                                                  'awpeople', 'i'))); 

DELETE FROM usession 
WHERE  session_id = (SELECT session_id 
                     FROM   usession 
                     WHERE  delete_session_id IS NULL 
                            AND user_id = (SELECT user_id 
                                           FROM   users 
                                           WHERE  REGEXP_LIKE(USER_NAME, 
                                                  'awpeople', 'i'))); 

Perhatikan bahwa karena kueri dalam bergantung pada usersession , Anda harus menghapusnya terakhir .



  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 beberapa bidang di Select IN Parameter

  2. Apakah Oracle mengambil semua baris sebelum mengevaluasi rownum?

  3. bagaimana cara menggunakan regexp_like Oracle di Hibernate HQL?

  4. Bagaimana cara membandingkan dua nilai CLOB di Oracle?

  5. Membalikkan String dalam SQL dan PL/SQL Contoh