giovedì 5 aprile 2007

Mesi e trimestri

Problema stupido, mi serviva una procedura che lavorasse su un trimestre alla volta.

Lo so, è una soluzione sporca, ma mi rompevo di mettere su decode e switch, così ho fatto la cosa più semplice del mondo.

La procedura prende due parametri anno e trimestre (es. anno = 2006, 2007, 2008... trimestre = 1, 2, 3, 4). La query di inserimento che mi serviva li usa così.

  INSERT INTO tabella_out (campo1, campo2 campo3)
       SELECT campo1,
              campo2,
              campo3
         FROM tabella_in t
        WHERE to_char(t.data_riferimento,'yyyy') = anno
          AND to_char(t.data_riferimento,'mm')/3 BETWEEN trimestre - 0.70
                                                     AND trimestre

L'ho detto, è una soluzione sporca, ma è una soluzione veloce.

Nessun commento: