🟡 Basta un poco di zucchero… per la “pillola” dell’OVER
- vesentiniigor
- 12 ott 2025
- Tempo di lettura: 3 min
🔵 Introduzione
Quindi alla fine (inversione temporale di un concetto che potremmo anche descrivere come una “prolessi”) ne sentivo il bisogno. L’ho tenuto con me finché non si è verificato il momento propizio.
Di seguito riporterò un tema specifico che tratta di accesso ai dati di un database. Quindi non posso sentirmi universalmente appagato ma, in ambito professionale, sono venuto a conoscenza di un modo nuovo di interrogare i dati e che, nel concreto, poteva darmi qualcosa di più tra cui (mai da sottovalutare) l’economia del tempo.
Vengo presto al dunque: la clausola OVER.
🟣 Un ponte tra il passato e il quotidiano
Chiedo venia a chi la usa quotidianamente e mi sento lievemente imbarazzato nei vostri confronti in quanto non troverete nulla di nuovo qui. Comunque, avevo necessità di estrarre i dati in modo tale da identificare gli elementi uguali e mantenere solamente quelli che rispettavano la caratteristica di essere stati i primi ad essere inseriti nel sistema.
Come avrei fatto prima?
· estrazione su foglio di lavoro excel
· applicazione formula
· quadratura visiva
· salvataggio tabella
· esecuzione comando di pulizia
Mi sono chiesto se questa fosse l’unica soluzione. Perché non è sempre giusto (anzi…) il modo in cui siamo abituati a operare. Vada poi ad aggiungersi che non è sempre facile, per ogni cosa, potersi confrontare con i colleghi e chiedere loro come avrebbero fatto.
Soluzione? Posso confermare che mi sono avvalso della IA. Gli/le ho spiegato (non ho ancora capito bene se è maschio o femmina) il problema e mi ha mostrato una query che in poche righe risolveva la questione.
Non mi sono limitato ad utilizzarla. L’ho osservata e ho voluto approfondire e metabolizzare il tutto. Cosa stava a fare e cosa significava quell’istruzione OVER in tale contesto? E perché non l’avevo mai sentito prima?
WITH CTE AS (
SELECT
TableID,
ROW_NUMBER() OVER (
PARTITION BY TipoDato, ValoreStringa
ORDER BY ValoreIntero DESC
) AS row_num
FROM Tabella
)
DELETE FROM Tabella
WHERE TableID IN (
SELECT TableID
FROM CTE
WHERE row_num > 1
)Di certo era una delle novità presenti nelle ultime versioni del database. Invece, scopro che è più che maggiorenne e che è un’istruzione che trovo disponibile in più DBMS: Sql Server, Oracle, DB2.
Eccomi dentro il concetto di “funzioni di finestra” all’interno delle quali ricade la clausola OVER. Sono rimasto piuttosto di stucco, come potevo non averne mai sentito parlare?
Ho valutato potesse dipendere dalla mancanza di confronto, dall’iniziale scetticismo verso strumenti diversi dai soliti utilizzati. E poi ho capito qualcosa di più, che mi sarebbe servita più curiosità e che tale curiosità va costantemente alimentata, così come nella vita privata, anche nella sfera professionale.
🔴 Ora che ho imparato, divulghiamo!
E non finisce qui! (avrebbe detto in altri contesti e in modo più brillante il nostro Corrado). Il passaggio successivo è stato la necessità di divulgare.
Faccio un passo indietro. Avevo due scelte, quella che troppo spesso si concretizza che è pari al fatto che ciò che si impara lo si deposita presto nel proprio bagaglio culturale. La seconda scelta è quella che costa di più ma che dà più soddisfazione: la divulgazione.
Perché? Non so, forse perché le cose o le senti o non le senti. Credo che imparare la clausola OVER, e tutte le sue sfumature di utilizzo che può mettere in gioco, sia un importante approccio nel lavoro dell’informatico.
Se prima usavo l’excel per alcuni approcci, ora non più. O meglio, non più per casi come quello citato che mi ha dato la possibilità di incontrare le potenzialità della clausola OVER.
Quante altre cose non conosco? Senza scomodare i filosofi classici per rubargli frasi come “ora so di non sapere”, ho maturato la convinzione che da ora in poi (anche se in realtà è molto tempo che il mio approccio si è evoluto) metterò in discussione l’approccio utilizzato nelle cose di tutti i giorni.
⚪ Conclusione
Mi sono trovato intorno ad un tavolo. I colleghi hanno ascoltato ciò che ho esposto. Credo si siano accorti che mi tremava un po’ la voce e, se non l’hanno avvertito, ora lo sanno perché lo leggeranno qui.
Le volevo chiamare “pillole”. Per me rimarranno tali anche se nel contesto lavorativo si è voluto dare un tono più professionale-inglesizzato. “Pillole” mi suonava proprio bene.
Andando oltre comunque la preferenza e la scelta linguistica, è la soddisfazione che ho ricevuto dalla “platea”. Prima di chiudere il confronto ho manifestato la speranza che il dibattito fosse stato interessante e ho percepito che per molti era entrata una fresca ventata per rinvigorire l’operato quotidiano.
Mi è bastata la sensazione, più che la conferma verbale, di avere fatto breccia negli interessi altrui per sentirmi ampiamente ripagato.












Apprezzabile anche per i non addetti ai lavori, il messaggio di fondo è chiaro: approfondiamo, impariamo e divulghiamo.