BookmarkSubscribeRSS Feed
sdang
Quartz | Level 8

I have a column, TimePlayed, and its value is in second.  How do I convert that to hours.  I used the function HOUR but I don't it give me the correct value.

Capture.PNG

Furthermore ,I have two columns indicating the start time and end time if there is any way to get hours played.

Capture.PNG

4 REPLIES 4
ballardw
Super User

If timeplayed is in seconds then code:

hoursplayed = timeplayed/ 3600;

Do you need whole hours or fractions?

The HOUR function returns the value of the hour portion of a datetime or time variable. For your first example of StartTime the hour function would return 16.

You can use the function INTCK with two datetime variables to return the number of hour intervals but may not provide what your are looking for if you want fractions of an hour.

sdang
Quartz | Level 8

Thank you, it helps.

TomKari
Onyx | Level 15

Or if you just want to see the number of seconds as the number of hours, use the time8. format on the number of seconds.

Reeza
Super User

And if both of your variables are datetime you can subtract them to get a duration of time played which would be in seconds.

duration=end_time-start_time;

format duration time8.;

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1723 views
  • 9 likes
  • 4 in conversation