1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| with input_data as (
select l.pkpr,v.titlc,v.titll,v.cndct,v.ctct,v.cnct,v.cdscl1,l.lklo,v.lclo1,
decode(a.bcoinba,'I',null,
decode(l.leta,0,'rez-de-chaussee',
01,' 1er etage',
to_char(l.leta,'90')||'eme etage'))etage,
v.adresse1,v.adresse2,v.adresse3,v.ville,
h.hsl,l.annmev,l.prixvt,l.prodfin, max(v.cdscl1) over () max_date
from klogemt l, kprog p, kcaushs h,vuadres v, kbatimt a
where l.pkpr=p.pkpr
and v.lklo=l.lklo
--and v.cdscl1 is null
and a.pkpr=l.pkpr
and a.tctr=l.tctr
and a.bcba=l.bcba
and (l.hsc ='FU' or l.hsc like 'V%')
and l.hsc=h.hsc(+)
and h.hsl='FUTURE VENTE OU DEMO'
)
select pkpr,
titlc,
titll,
cndct,
ctct,
cnct,
cdscl1,
lklo,
lclo1,
etage,
adresse1,
adresse2,
adresse3,
ville,
hsl,
annmev,
prixvt,
prodfin
from input_data
where nvl(cdscl1, max_date) = max_date
order by pkpr, lklo; |
Partager