Oracle Virtual Trader Caso di Dichiarazione syntex domanda

0

Domanda

Per tutti i Regni,

Attualmente sto usando un modulo chiamato Virtual trader in Oracle 12.1.3 con RDBMS 11.2 per automatizzare i calcoli di excel. Essenzialmente si traduce Excel logica di un syntex in Oracle.

Per esempio, xxcp_cu_cpa.get_tp_rates({D1040},{D1031},{D1047},'4') significa che vai a TP tabella delle Aliquote e ottenere un Tasso di 4.

Attualmente ho la seguente tabella per creare con alcuni Casi di dichiarazione. Io so solo un'istruzione Case con 1 logica , come il caso quando to_number({D2222}) > to_number({D21111}) quindi to_number({D2226} - {D2432} else to_number({D2127}) fine

Regola il Volume di gamma di Gap Applicabili % Fino a 1.000.000.000 1.000.000.000 di 2.40%
Fino a 1.500.000.000 di 500.000.000 di 2.20%
Fino a 2,000,000,000 500.000.000 di 1.90%
Sopra 2,000,000,000 - 1.70%

Così, ogni feedback sulla costruzione di un'istruzione case con quei 4 logiche sono enormemente apprezzato. Grazie !

oracle
2021-11-23 18:56:15
1

Migliore risposta

0

Si può utilizzare un CASE come questo

case when volume <= 1000000000 then 2.4
     when volume <= 1500000000 then 2.2
     when volume <= 2000000000 then 1.9 
     else 1.7 end as perc

Caso di Test

with dt as (
select 1000000000 volume from dual union all
select 1000000001 volume from dual union all
select 1500000000 volume from dual union all
select 1500000001 volume from dual union all
select 2000000000 volume from dual union all
select 2100000001 volume from dual)
select volume,
  case when volume <= 1000000000 then 2.4
       when volume <= 1500000000 then 2.2
       when volume <= 2000000000 then 1.9 
       else 1.7 end as perc
from dt;

    VOLUME       PERC
---------- ----------
1000000000        2,4
1000000001        2,2
1500000000        2,2
1500000001        1,9
2000000000        1,9
2100000001        1,7
2021-11-23 20:14:27

Grazie Sir ! Mi metterà alla prova fuori. Buona vacanza !
Stanley Suzikya

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................