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

Temukan tanggal yang hilang menggunakan SQL

Ini akan membuat Anda kehilangan semua hari selama satu tahun (SQL Fiddle ).

all_dates menghasilkan daftar semua tanggal 2012 (sesuaikan sesuai kebutuhan), dan LEFT JOIN memeriksa IS NULL menghilangkan tanggal-tanggal yang ada di tabel sumber Anda.

WITH all_dates AS (
  SELECT TO_DATE('01-jan-2012') + ROWNUM - 1 AS d
  FROM dual
  CONNECT BY ROWNUM <= ADD_MONTHS(TO_DATE('01-jan-2012'), 12 ) - TO_DATE('01-jan-2012')
)
SELECT all_dates.d
FROM all_dates
LEFT JOIN t ON ( t.d = all_dates.d )
WHERE t.d IS NULL
ORDER BY all_dates.d
;

Pastikan untuk menggunakan variabel bind alih-alih hard-coding tanggal tiga kali.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Fungsi Oracle menggunakan Hibernate

  2. Cara cepat memilih data dari Oracle

  3. Apa kotak peralatan yang sempurna untuk pengembangan PL/SQL?

  4. Putar di Oracle 10g

  5. Cara menghapus antrian di Oracle AQ