Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle SQL:Как да покажа празни седмици / седмици без данни?

Използвайте разделено външно съединение :

select data.id, weeks.weekend_day, nvl(value, 0) value
from
(
    select date '2012-01-01' weekend_day from dual union all
    select date '2012-01-08' weekend_day from dual union all
    select date '2012-01-15' weekend_day from dual
) weeks
left join
(
    select 'A00' id, date '2012-01-01' weekend_day, 1 value from dual union all
    select 'A00' id, date '2012-01-08' weekend_day, 7 value from dual union all
    select 'B00' id, date '2012-01-08' weekend_day, 4 value from dual union all
    select 'B00' id, date '2012-01-15' weekend_day, 3 value from dual
) data
    partition by (data.id)
    on weeks.weekend_day = data.weekend_day


  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

  2. Как мога да покажа таблични данни с Java Stored Procedure?

  3. IN срещу OR на Oracle, кое по-бързо?

  4. Персонализирана поръчка в Oracle SQL

  5. Функция TO_TIMESTAMP_TZ() в Oracle