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

Как да получите седмични данни в Oracle

Зависи какво търсиш. Ако сте изминали следващите 7 дни, тогава:

select * 
  from my_table
 where date_col between :my_date and :my_date + 7

Ако искате да кажете понеделник до неделя, използвайте next_day функция:

select *
  from my_table
 where date_col between next_day(:my_date, 'Monday') - 7 
                    and next_day(:my_date, 'Monday')

И двете където :my_date е датата, на която влизате.

Ако не предавате дата, а низ, тогава първата ще стане, като използвате to_date функция:

select *
  from my_table
 where date_col between to_date(:my_date,'dd/mm/yyy') + 7
                    and to_date(:my_date,'dd/mm/yyy')

и бихте могли да направите нещо подобно за втория. Ако трябва да използвате to_date след това date_col трябва да има функционално базиран индекс на to_date(date_col,'dd/mm/yyyy') или ако ще го конвертирате по различен начин, тогава по този начин.



  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 APEX Database Trigger - Проблеми с рефериране на колони на база данни

  2. Как мога да опиша таблица в Oracle, без да използвам командата DESCRIBE?

  3. Сигнали за време, прекарано в чакане на базата данни EM12c

  4. Възможно ли е да се препълни тип Oracle NUMBER?

  5. В Oracle възможно ли е да вмъкнете колона в таблица?