Elenco date; differenza in minuti tra i vari record

martedì 21 marzo 2017 - 01.11
Tag Elenco Tags  Windows 7  |  Oracle 11g  |  Internet explorer 8.0

marco72 Profilo | Newbie

Ciao cerco di spiegarmi. Ho una serie di record ognuno con una data. Quello che vorrei fare è calcolare in minuti la differenza tra:
Prima e seconda-seconda e terza-terza e quarta e così via.
Es:
Tabella con nome e timbrature
Franco 20\03\2017 08:23
Federico 20\03\2017 09:30
Anna 20\3\2017 10:35
......
E prendermi solo le due differenze più alte

Spero di essermi spiegato

Grazie

renarig Profilo | Expert

>..... Quello che vorrei fare è calcolare in minuti la differenza
>tra:
>Prima e seconda-seconda e terza-terza e quarta e così via.

Cominciamo dalle basi :)

Immaginiamo di avere una tabella di nome "Tab"
con i campi:
- Nome ---- Testo
- Timb ----- DataOra

Per fare quello che chiedi devi innanzitutto con una Sottoquery mettere
sulla stessa riga il valore di Timb e il valore del Timb immediatamente precedente

Poi diventa immediato fare la sottrazione ..........


Non conosco Oracle ma questa dovrebbe funzionare
SELECT T1.Nome, T1.Timb, (SELECT Max(T2.Timb) AS MTi FROM Tab AS T2 WHERE (T2.Timb<T1.Timb)) AS TimbraturaMinore FROM Tab AS T1 ORDER BY T1.Timb ;

Facci sapere

.







marco72 Profilo | Newbie

Grazie per l'aiuto. Io però dovrei calcolare la differenza prendendo il campo di riferimento quello orario non il nome, in questo senso, prendere il primo - secondo,secondo- terzo e così via senza fare logica sul nome anche perché non sempre è univoco. Quindi dovrei fare la logica sull'orario minimo - quello successivo etc

renarig Profilo | Expert

>..... prendendo il campo di riferimento quello orario non il nome, .....
ritengo che l'esempio proposto (con un piccolo passo successivo)
faccia proprio quello che chiedi
in quanto il nome è escluso dalla sottoquery

Il problema è che io non ho Oracle e non posso testarlo
e potrebbero esserci dei problemini di sintassi

Se lo provi vedrai che sulla stessa riga della vista avrai
- l'orario della tabella
- l'orario immediatamente precedente indipendentemente dal nome

Dopo mancherà solamente una sottrazione :)

Facci sapere

.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5