
Hvorfor skrive den håpløst banale
ALT 1:select 1 + 1 from dual
Når man kanskje heller burde skrive ALT 2. Denne versjonene er mer skalerbar og generell – og den tar tallet 1 på stort alvor. Denne versjonen er også rigget for en mer kompleks verden, som i mye høyere grad lar tallet 1 – selve byggesteinen for alle regnestykker leve et mer spennende liv.
ALT 2:select (select sum(val) from (select case when mod(level, 2) = 1 then 1 else 1 end as val from dual connect by level <= 2) ) as resultatfrom dualwhere exists ( select 1 from ( select /*+ NO_MERGE */ count(*) cnt from dual group by rollup(1) ) where cnt is not null);
Eller kanskje når man tenker seg lenge og grundig om, kanskje heller burde satse på denne – ALT 3: Denne versjonen er forberedt på hva som helst som vil komme i både nær og fjern fremtid. Kan tilpasses alt fra mobiltelefoner til kjøleskap. Med denne versjonen får tallet 1 et skikkelig løft. Et valg for fremtiden.
ALT 3:select extractvalue( xmltype( dbms_xmlgen.getxml( 'SELECT SUM(x) AS r FROM (' || ' SELECT TO_NUMBER(REGEXP_SUBSTR(''A1B1C'',''[0-9]'',1,LEVEL)) x ' || ' FROM dual CONNECT BY LEVEL <= REGEXP_COUNT(''A1B1C'',''[0-9]'')' || ')' ) ), '/ROWSET/ROW/R' ) as resultatfrom dualwhere 1 = ( select count(*) from ( select distinct nvl2(dummy, 1, 0) as d from dual model dimension by (0 as i) measures (dummy) rules ( dummy[0] = 'X' ) ));