2013-03-06 3 views
1

J'utilise SQL Server, et j'ai une procédure comme celle-ci:Date de SQL Server Heure personnalisée La date

create proc Output1 
(
    @Date_From datetime, 
    @Date_To datetime 

Ensuite, je vais exécuter cette procédure comme ceci:

exec Output1 '03-01-2013 06:00:00AM', '03-31-2013 06:00:00AM' 

Alors, comment pouvez J'ai spécifié l'heure de 6:00:00AM lorsque j'ai exécuté la procédure, mais je vais seulement entrer la date de '03 -01-2013 ', '03 -01-2013' mais la sortie encore '03 -01-2013 06:00:00 AM ' , '03 -31-2013 06:00:00 '?

Merci,

Répondre

3

Utilisez dans votre procédure stockée pour définir la partie du temps:

declare @x datetime = '03-01-2013'; 
select @x = DateAdd(hh, 6, DateDiff(dd, 0, @x)) 
print @x 

Plus: DATEDIFF et DATEADD

+0

... pourquoi embêter avec 'DateDiff'? ... c'est bien 'select @x = DateAdd (hh, 6, @x)' – whytheq

+0

Cela fonctionne .. Merci ..^_^.. – Captain16