Morace da se drugacije napise query za Informix, ali si ga jako lose uprostio ovde, pa se ne vidi sta on zaista treba da radi.
Zasto?
select test1 from .... where test1 = 2
Dobices samo "0 ili vise" dvojki. :)
Potpis
select je uproscen jer me zanima kako se u osnovi radi takav nested select u informixu. U osnovi moram da naucim informix SPL pa sam probao neke oracle stvari koje funkcionisu da napisem u informixu i imam problema sa select form select. a evo ga i select
select KI_E0,KN_E0,KI_E1,KN_E1 ,KI_E2,KN_E2,KI_E3,KN_E3,MA_ID, MANAME from
(select KST_ID, KSTNR KI_E0,KSTNAME KN_E0, KSTHIERARCHIE from ZENAL_KOSTENSTELLE
where KSTHIERARCHIE =0) E0,
(select KST_ID, KSTNR KI_E1,KSTNAME KN_E1 ,KSTHIERARCHIE from ZENAL_KOSTENSTELLE
where KSTHIERARCHIE =1) E1,
(select KST_ID, KSTNR KI_E2,KSTNAME KN_E2 ,KSTHIERARCHIE from ZENAL_KOSTENSTELLE
where KSTHIERARCHIE =19) E2,
(select a.KST_ID, KSTNR KI_E3,KSTNAME KN_E3 ,KSTHIERARCHIE ,case when ACTIV = 1 then MA_ID
else MA_ID+10000 end MA_ID ,
case when ACTIV = 1 then c.NACHNAME||' '||c.VORNAME
else 'Obsolete '||c.NACHNAME||' '||c.VORNAME end MANAME from ZENAL_KOSTENSTELLE a,ZENAL_NA_SL_VON_VIS_2 b,ZENAL_MITARBEITER c
where KSTHIERARCHIE =11
and a.KST_ID=b.KST_ID
and b.ma_id=c.MA_ID_INTERN) E3
where e0.KST_ID=e1.KSTHIERARCHIE
and e1.KST_ID=e2.KSTHIERARCHIE
and e2.KST_ID=e3.KSTHIERARCHIE
Sta sam select radi je potpuno nebitno ( postavlja neke hierarchije)
U Informix dokumentaciji se govori samo o subquery u where klauzuli al to meni ne treba
Select ... from (select ...
je relativno nova konstrukcija, a živeli smo lepo i bez nje.
Kada pogledam upit iz primera, ne mogu da ne primetim da je to žestoka "zloupotreba" ORACLA.
Dakle, E0 E1 E2 uopšte nije potrebno pisati kao podupite, može jednostavno da se stavi običan join. Što se tiče podupita E3 (da li si siguran da case radi u Informixu?) može se napraviti view pa ga onda iskoristiti u joinu, a to je bio način na koji smo nekada rešavali probleme gde su nam trebali podupiti.
Znači, umesto dinamičkih pogleda, napravi statički.
Hvala na pokusaju.
Mene samo zanima da li select form (select...
radi u informixu, jer mi to u osnovi svako malo treba. Ne zbog ovog selecta niti je on bitan u celoj ovoj prici.
Inace case funkcionise u informixu bez problema i zato ne mogu da verujem da ovakve stvari ne rade, vec da moram da pisem extra view za to.
Da ide sa view to mi je jasno.
( Usput ovaj select je samo deo jednog view-a koji ide dalje sa union .... i funkcionise bez problema i tacno onako kako treba pa ne vidim zasto bi trebalo nesto promeniti) a da ide sa obicnim join ... ne znam kako pa mi napisi