L’esempio ci illustra un modo per sommare valori di tempo in formato hh:mm (ore:minuti) dalle colonne di una tabella.

–>creo tabella temporanea

create table #t ( hm varchar(5))

insert #t values(‘8:30’)

insert #t values(‘5:45’)

insert #t values(’12:12′)

insert #t values(‘7:20’)

select convert(varchar, sum(datediff(ss, ‘1900-01-01 00:00’, convert(datetime, hm)))/3600) +

‘:’ +

convert(varchar, (sum(datediff(ss, ‘1900-01-01 00:00’, convert(datetime, hm)))%3600)/60)

from #t

–>elimino tabella temporanea

drop table #t

Questa soluzione piuttosto elegante non usa cursori o tabelle temporanee, ma sfrutta la potenza delle tabelle derivate.

USE pubs

GO

–> Prendiamo il nome ed il cognome del 12-13-14 autore dalla tabella authors

select a1.au_fname + ‘ ‘ + a1.au_lname [Nome e Cognome],

(select count(*) from authors a2

where a2.au_lname <= a1.au_lname) [Lista degli autori]

from authors a1

where (select count(*) from authors a2

where a2.au_lname <= a1.au_lname) between 12 and 14

order by a1.au_lname

Assumiamo che SQL SERVER abbia impostato di default la domenica cioè 7 (è il caso del mio SQL Server) il parametro DATEFIRST che indica il primo giorno di della settimana.

–>Set datefirst 7

declare @d datetime, @l datetime

set @d = ’13/06/2001′ –> 13 Giugno 2001

–> Il sistema imposta l’inizio della settimana il:

select @@DATEFIRST as [Primo giorno della settimana] –> 1 lunedì, 2 martedì, … 7 domenica

–> Visualizziamo la data del lunedì della settimana

select dateadd(dd, 2-datepart(dw, @d), @d) as [Lunedì della settima]

L’abbassamento del costo dei dispositivi per la masterizzazione e relativi supporti ha portato a una grande diffusione di quest’ultimi. Spesso […]

Con le funzioni per le date con T-SQL è facile manipolare le date ed ottenere alcune interessanti informazioni, nel nostro esempio con datediff() e dateadd() possiamo ricavare il numero di giorni contenuti in uno specifico mese ed anche l’ultimo giorno del mese n questione:

declare @mese int, @anno int, @data datetime

select @mese = 6, @anno = 2001

select @data = convert(varchar, @anno) + right(‘0′ + convert(varchar, @mese), 2) + ’01’

–> Per calcolare il numero di giorni di un mese

select datediff(d, @data, dateadd(m, 1, @data)) as “Numero di giorni”

–> per determinare l’ultimo giorno del mese.

select dateadd( d, -1 , dateadd( m , 1 , @data ) ) AS “Ultimo giorno del mese”

In questo articolo analizziamo i passi da seguire per ricompilare il kernel. Prima di tutto È necessario dotarsi dei sorgenti […]

Il kernel di un sistema operativo ha il compito di amministrare le risorse presenti sul nostro sistema: eccone riassunti gli aspetti principali.