March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I have a column DateTimeCreated (Example: 2016-12-20 19:40) and I want to add 10 hours to this resulting in 2016-12-21 05:40. Is this possible?
Solved! Go to Solution.
You can add a duration to a datetime field, e.g. if your fieldname is "DateTime":
[DateTime] + #duration(0,10,0,0))
The arguments of#duration are days, hours, minutes, seconds.
I needed to do this recently and successfully used UTCNOW()+TIME(10,0,0) to add 10 hours. 🙂
This accepted solution works for integers, but not for decimals.
If you wish to support decimals as well, then you should convert the value to second and round it.
This one add four hours in M / PowerQuery to column createdon:
#"Added Hours" = Table.ReplaceValue(#"Previous line",each [createdon], each DateTime.From([createdon]) + #duration(0,0,0,Number.Round(4 * 3600)), Replacer.ReplaceValue,{"createdon"})
@TimoRiikonen This helped but still I felt it was difficult to convert.
For thos who need to add hours for example 9.5 hours which is (34,200 seconds) then use the forumla as below,
[Last Refreshed Date and Time] + #duration(0,0,0,34200)
In other words all your decimal values convert to seconds easily add.
Thanks,
Karthik
You can do this in a calculated column if you prefer not to delve in to M.
The default unit in a Date/Time context is 1 day, so:
Column = [DateTimeCreated] + 1 in your example would return 2016-12-21 19:40
You can use this to add hours using decimals or a calculation like:
Column = [DateTimeCreated] + 0.5 (12 hours added)
Column = [DateTimeCreated] + ((1/24)*10) (10 hours added)
It works! Amazing and thanks
@Anonymous wrote:You can do this in a calculated column if you prefer not to delve in to M.
The default unit in a Date/Time context is 1 day, so:
Column = [DateTimeCreated] + 1 in your example would return 2016-12-21 19:40
You can use this to add hours using decimals or a calculation like:
Column = [DateTimeCreated] + 0.5 (12 hours added)
Column = [DateTimeCreated] + ((1/24)*10) (10 hours added)
!
You can add a duration to a datetime field, e.g. if your fieldname is "DateTime":
[DateTime] + #duration(0,10,0,0))
The arguments of#duration are days, hours, minutes, seconds.
The #Duration function seems to be related to something else now.
I found the easiest way was to create a new column using the following formula:
thanks you just helped me too!!
THIS FUNCTION IS AVAILABLE BY direct query?????
I have this error
Not trying to resurrect a dead topic, but for those wondering where #duration is.. it's in PowerQuery (M), not DAX.
I tried this to type the function #duration function but it's not coming up. Power Bi does not recognize it. Do you know why?
Same here.. that #Duration formula doesn't works
#duration is a Power Query (M) function to be used in the Query Editor.
And it is case-sensitive, so #Duration won't work in any case.
Worth mentioning in the answer as Power Query M is not mentioned in the question either.
This is first Google result for "powerbi date add hours".
Most people would be expecting DAX
Sorry, i write Duration here, but i tried with duration as follows:
StartDate = (adx_events[adx_releasedate] + #duration(0,10,0,0))
i get this error on powerbi query editor:
The following syntax error occurred during parsing: Invalid token, Line 1, Offset 32, #.
In the code below I copied your line without any modification and it works fine.
let Source = {40000..40001}, #"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error), #"Changed Type" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", type date}}), #"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Column1", "adx_releasedate"}}), adx_events = #"Renamed Columns"{0}, StartDate = (adx_events[adx_releasedate] + #duration(0,10,0,0)) in StartDate
You can copy/paste this code into your query editor and see for yourself.
this works!
Thansk a lot, your solution worked magically for my issue as well 🙂
Hi
How do you add 10hrs to all dates in the list instead of just one?
Please don't hijack other topics for your own question, but start a new topic instead.
And don';t forget to react to replies you get, maybe give kudos, mark replies as answer, which you still have to do for your for your first and only topic so far, raised in April 2016.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
User | Count |
---|---|
93 | |
92 | |
86 | |
77 | |
49 |
User | Count |
---|---|
166 | |
149 | |
99 | |
73 | |
57 |