Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
I have a table as below:
Start date | end date | name | alias |
01/01/2022 | 01/01/2024 | raj | bhutan
05/01/2022 | 01/01/2024 | rem | india
I need to update the first row enddate column based on second row startdate.
As the dates successive dates are inclusive.
Solved! Go to Solution.
Hi @raveenraveen ,
You can use the following code to implement the requirement.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtQ31DcyMDJS0lEqSswCkkkZpSWJeUqxOtFKpkhyqblAMjMvJTMRLAUS1jfTNwcKGpanAMmU8kKl2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Start date" = _t, name = _t, alias = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Start date", type date}, {"name", type text}, {"alias", type text}}),
test = Table.Sort(#"Changed Type",{{"Start date", Order.Ascending}}),
#"Added Custom" = Table.AddColumn(test, "Custom", (x)=> try List.Select(test[Start date],(y)=>y>x[Start date]){0} otherwise null ),
#"Changed Type1" = Table.TransformColumns(Table.TransformColumnTypes(#"Added Custom",{{"Custom", type date}}) , {"Custom",(x)=> Date.AddDays(x,-1) } ),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Custom", "End date"}}),
#"Reordered Columns" = Table.ReorderColumns(#"Renamed Columns",{"Start date", "End date", "name", "alias"})
in
#"Reordered Columns"
Then the result is as follows.
Best Regards,
Neeko Tang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @raveenraveen ,
According to your description, here are my steps you can follow as a solution.
(1)We can create a calculated column.
End date =
var a=CALCULATE (
MIN ( 'Table'[Start date] ),
FILTER (
'Table',
'Table'[Start date]> EARLIER ( 'Table'[Start date])
)
)
return IF(a<>BLANK(),a-1,BLANK())
(2)Then the result is as follows.
If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. Thank you.
Best Regards,
Neeko Tang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @raveenraveen ,
You can use the following code to implement the requirement.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtQ31DcyMDJS0lEqSswCkkkZpSWJeUqxOtFKpkhyqblAMjMvJTMRLAUS1jfTNwcKGpanAMmU8kKl2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Start date" = _t, name = _t, alias = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Start date", type date}, {"name", type text}, {"alias", type text}}),
test = Table.Sort(#"Changed Type",{{"Start date", Order.Ascending}}),
#"Added Custom" = Table.AddColumn(test, "Custom", (x)=> try List.Select(test[Start date],(y)=>y>x[Start date]){0} otherwise null ),
#"Changed Type1" = Table.TransformColumns(Table.TransformColumnTypes(#"Added Custom",{{"Custom", type date}}) , {"Custom",(x)=> Date.AddDays(x,-1) } ),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Custom", "End date"}}),
#"Reordered Columns" = Table.ReorderColumns(#"Renamed Columns",{"Start date", "End date", "name", "alias"})
in
#"Reordered Columns"
Then the result is as follows.
Best Regards,
Neeko Tang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
User | Count |
---|---|
117 | |
73 | |
58 | |
49 | |
48 |
User | Count |
---|---|
171 | |
122 | |
60 | |
59 | |
56 |