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

Perbarui Bidang Secara Otomatis di Basis Data

informasi pada kolom TMP_PONYLIST berlebihan (ada di tempat lain). Anda akan mendapatkan berbagai macam masalah untuk mempertahankannya (Tidak ada solusi yang akan bekerja dengan benar di lingkungan multi-pengguna kecuali ada semacam mekanisme penguncian).

Dalam model yang dinormalisasi, Anda cukup membuang kolom ini dari model fisik. Jika Anda membutuhkan informasi, Anda dapat menggunakan tampilan, misalnya dengan Oracle 11gR2:

CREATE OR REPLACE VIEW rider_v AS
SELECT rider_id, /*...,*/
       (SELECT listagg(p.pony_name, ';') WITHIN GROUP (ORDER BY p.pony_name)
          FROM t_pony p
          JOIN t_rider_pony rp ON (p.pony_id = rp.pony_id)
         WHERE rp.rider_id = r.rider_id) tmp_ponylist
  FROM t_rider r;

Lihat SO ini misalnya agregasi string sebelum 11gR2.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perilaku aneh dari perintah LENGTH - ORACLE

  2. Bagaimana cara mendapatkan jumlah elemen dalam array JSON yang disimpan sebagai CLOB dengan Oracle 12c?

  3. Menggunakan pernyataan WITH dan UPDATE dalam kueri SQL yang sama

  4. Hubungkan Oracle dari nodejs

  5. Oracle JDBC ojdbc6 Jar sebagai Ketergantungan Maven