3

With the time data type (I'm using Microsoft SQL Server 2008), is there any way to take only the minute part out of it? I tried to pass the time to datepart and datediff function but both refused to work.

Example: I want to get 15 from 04:15

  • 3
    What do you mean, "refused to work"? See my answer below. Those examples give the desired output. – Thomas Stringer Apr 18 '12 at 16:35
9
select datepart(minute, '04:15')

Utilize the DATEPART() function, with minute as the datepart param.

declare @current_time time

select @current_time = getdate()

select datepart(minute, @current_time) as current_minute

BOL Reference on DATEPART

  • 3
    I strongly recommend the habit of specifying explicitly the datepart, e.g. MINUTE instead of MI. There are too many shorthand formats that are ambiguous to justify saving a few keystrokes. This very thing gets its own dedicated slide in my popular "Bad Habits to Kick" presentation. :-) – Aaron Bertrand Apr 18 '12 at 17:15
  • @AaronBertrand Good point, and a great suggestion. I've edited my post to reflect! – Thomas Stringer Apr 18 '12 at 17:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.