# datediff at row levels

Options
Member

Hello,

I'm doing analysis of our repetitive customers. I want to create a calculation that will show the days difference between order 1 and order 2 based on the company. Each order has its own row. I created rank column, that assigns 1 to first order, 2 to the second etc… How can I create a calculation that will subtract date of order 2 for company x from order 1 for company x?

Thank you

• Domo Employee
Options

@zuchu
You should be able to do this using the Pivot tile in Magic ETL.

Basically, you can pivot the rows based on their order number, which will create new columns for each order. You can then use the DATEDIFF formula with `Order 1`, `Order 2`.

Here are a few screenshots that walks through those steps with very simple dummy data:

Starting Data:

Pivot Tile:

Output Data:

• Coach
Options

I think that this would need to be done in the same ETL that you are using to add the order rank. Once you have each companies orders ranked in ascending order, then you would want to use a rank/window function to create a "Prior Order Date" field. This would be done by using a LAG function offset by 1 row and partitioned by Company. You can then use DATEDIFF(`Order Date`,`Prior Order Date`)

“There is a superhero in all of us, we just need the courage to put on the cape.” -Superman

• Domo Employee
Options

@zuchu
You should be able to do this using the Pivot tile in Magic ETL.

Basically, you can pivot the rows based on their order number, which will create new columns for each order. You can then use the DATEDIFF formula with `Order 1`, `Order 2`.

Here are a few screenshots that walks through those steps with very simple dummy data:

Starting Data:

Pivot Tile:

Output Data: