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

Oracle - Perbarui baris dengan nilai min dalam grup kolom dari tabel lain

Pernyataan pilih Anda lebih kompleks dari yang seharusnya, Anda akan mendapatkan set yang sama dengan cara ini:

SELECT emp.employee_id,min(bo.booking_date) booking_date
FROM employee emp
  LEFT JOIN booking bo 
  ON bo.employee_id = emp.employee_id
WHERE emp.joining_date is NULL
GROUP BY emp.employee_id;

Pembaruan Anda dapat dilakukan seperti ini, perhatikan bahwa bagian "dan ada" adalah opsional, tetapi saya cenderung menyertakannya untuk memperjelas maksud kueri.

UPDATE employee emp
  SET emp.joining_date = 
    (SELECT min(booking_date) from booking bo where bo.employee_id = emp.employee_id)
WHERE emp.joining_date IS NULL
  and exists(select * from booking bo where bo.employee_id = emp.employee_id);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membatasi catatan yang dikembalikan dari kueri SQL di Oracle

  2. Tidak dapat terhubung dengan Oracle 11g melalui java

  3. Prosedur untuk mengunduh file dari url yang diberikan di Oracle 11g dan menyimpannya ke dalam kolom tipe blob

  4. Bagaimana cara mengedit BLOB (mengandung JSON) di Oracle SQL Developer?

  5. perbedaan antara NLS_NCHAR_CHARACTERSET dan NLS_CHARACTERSET untuk Oracle