Ciao a tutti,
cercherò di spiegare bene cosa vorrei ottenere.
Ho due tabelle in Oracle, A e B, con la stessa struttura (nome campi); ad esempio:
A[ID, campo1, campo2, campo3]
B[ID, campo1, campo2, campo3]
Per la tabella A supponiamo di avere i seguenti record (ometto la primary key per semplicità):
ID campo1 campo2 campo3 1 20 1 .. 1 21 1 . 1 12 1 ... 1 23 1 ... 1 25 1 ... 1 23 1 ... 1 18 1 ... 1 21 1 ... 1 21 1 ...
e supponiamo di avere il tutto ripetuto per altri ID.
Vorrei ottenere qualcosa del tipodove output conteggia le volte per cui 'campo1' è stato maggiore di 20 per almeno 2 volte consecutive (nell'esempio avrei [20,21] poi [23,25,23] poi [21,21])
ID output 1 3 2 ...
L'idea è di avere una funzione tale che possa scrivere una query del tipo
SELECT ID, myFun('campo1', '20') FROM A WHERE campo2=1
oppure
SELECT ID,myFun('campo1', '20') FROM B WHERE campo2=1
così da ottenere un result set a 2 colonne [ID, OUTPUT] da leggere by-code.
Spero di essere stato sufficientemente chiaro.
Grazie in anticipo.