datetime date erlang date-arithmetic

datetime - Fecha aritmética en Erlang



!= erlang (3)

Creé una esencia de GitHub con algunas utilidades útiles para este tipo de cosas. Siéntase libre de robar si lo desea.

https://gist.github.com/104903

Tengo una fecha en este formato {Y,M,D} . ¿Hay alguna buena biblioteca de apoyo o trucos que pueda usar simplemente, por ejemplo restar tres meses a partir de esta fecha sin tener problemas con fechas inválidas, años bisiestos, etc.

Mi último uso similar se encuentra en MySql, donde puede escribir:

Select ''2011-05-31'' - Interval 3 Month;

que produce ''2011-02-28'' . No estoy interesado en cómo escribir esta biblioteca yo mismo, eso es lo que me gustaría evitar.


Use edate , específicamente la función de cambio.

> edate:shift({2011,5,31}, -3, months). {2011,2,28}

Debajo del capó, utiliza el módulo de calendario, por lo que se ocupa correctamente de todos los casos de esquina.