Timestamp de fin de año
Encuentra el timestamp Unix del siguiente límite de año y copia valores de rango de fechas habituales para informes anuales y scripts.
Límite de fin de año
Para la mayoría de los filtros de base de datos, el límite limpio es el inicio del año siguiente a las 00:00:00 UTC. Úsalo como límite superior exclusivo: created_at >= yearStart and created_at < nextYearStart.
Por qué los límites superiores exclusivos son más seguros
Los límites superiores exclusivos evitan errores de un segundo de más y de precisión de milisegundos. También funcionan limpiamente en bases de datos que almacenan fracciones de segundo.
Usar el límite de fin de año
La marca de tiempo de fin de año más segura es el primer instante del año siguiente, usado como límite superior exclusivo. Representa el punto en que el año actual se detiene sin depender de si tu almacenamiento guarda segundos, milisegundos, microsegundos o nanosegundos. Eso hace que el mismo filtro sea portable entre logs, APIs y bases de datos SQL.
- Usa created_at < nextYearStart en lugar de created_at <= lastSecondOfYear
- Usa el valor en milisegundos para JavaScript y rangos de gráficos de frontend
- Usa el valor en segundos para herramientas Unix y la mayoría de columnas de marca de tiempo de backend
- Combina el valor con yearStart al comprobar rangos anuales completos
Verificar el valor de fin de año
Convierte el valor copiado de nuevo a UTC y confirma que es el 1 de enero a las 00:00:00 del año siguiente. Aunque la gente lo llame fin de año, este límite es intencionadamente el primer instante después del año, lo que mantiene limpios los filtros de base de datos con precisión de segundos, milisegundos y microsegundos. También evita decidir si el último registro almacenado usa 23:59:59, 23:59:59.999 o un valor fraccionario más fino.