Przykłady z kursu SQL Oracle z Udemy
Wypisanie zwiększowej wartości dla konkretnego ID
select
employee_id,
salary
from employees
model
dimension by (employee_id)
measures (salary)
rules (
salary[employee_id = 100] = salary[employee_id = 100] + 999
)
Wypisanie nowej wartości dla zakresu odpowiednich ID okreslonego pętlą
select
employee_id,
salary
from employees
model
dimension by (employee_id)
measures (salary)
rules (
salary[for employee_id from 100 to 105 increment 1] = 999
)
Wypisanie zwiększowej wartości dla zakresu odpowiednich ID okreslonego pętlą
select
employee_id,
salary
from employees
model
dimension by (employee_id)
measures (salary)
rules (
salary[for employee_id from 100 to 110 increment 1] = salary[cv()] + 999
)
Wypisanie tylko zwiększonych wartości dla zakresu odpowiednich ID okreslonego pętlą
select
employee_id,
salary
from employees
model return updated rows
dimension by (employee_id)
measures (salary)
rules (
salary[for employee_id from 100 to 110 increment 1] = salary[cv()] + 999
)
Wypisanie tylko zwiększonych wartości dla zakresu określonego konkretnymi ID
select
employee_id,
salary
from employees
model return updated rows
dimension by (employee_id)
measures (salary)
rules (
salary[for employee_id from 100 to 110 increment 1] = salary[cv()] + 999
)
Wypisanie tylko zwiększonych wartości dla zakresu określonego podzapytaniem
select
employee_id,
salary
from employees
model return updated rows
dimension by (employee_id)
measures (salary)
rules (
salary[for employee_id in(select level + 99 from dual where level in(100,101) connect by level
)
Wypisanie sumy bieżącego wiersza, kolejnego i trzeciego w kolei
select employee_id, salary
from employees
model
dimension by (employee_id)
measures (salary)
RULES (
salary[any] order by employee_id =
salary[cv()] + salary[cv() +1] + salary[cv() +3]
)
order by employee_id
fetch first 10 rows only