Introduction
Comparing dates is a common procedure in day to day jobs. Whether you need them to trigger future, or past jobs you will need to know how to do it in Elixir.
Contents
Requirements
- none
Comparing Dates
To acomplish this task, you will use the .compare/2
method. Which exists in both Date
and DateTime
structs.
Upon success compare, the method will return any of the next atoms :lt | :eq | :gt
.
Example 1
A DateTime
utc format comparison where the first element is greater than the second.
iex(5)> DateTime.compare(~U[2022-04-10 04:51:27.626455Z], ~U[2022-03-10 04:51:27.626455Z])
:gt
Example 2
A Date
comparison where the first element is lesser than the second.
iex(2)> Date.compare(~D[2022-04-01], ~D[2022-04-08])
:lt
After thoughts
After using other tools in differents environments like date-fns
or moment
in javascript. I find refreshing the method used in this posting, instead of relying on a specific method to assert a question, ie isAfter
from date-fns
, here you get exactly the result of the comparison.
Top comments (0)