Una posible solución sería tener una aplicación constante que corresponda a los segundos en un cierto número de años (preferiblemente un múltiplo de 4). Puede agregar esta constante, traducir el tiempo y luego restar el número de años elegidos.
Ejemplo: elija 40 años.
determinar la constante:
MySQL [files]> select adddate(from_unixtime(0), interval 40 year);
+---------------------------------------------+
| adddate(from_unixtime(0), interval 40 year) |
+---------------------------------------------+
| 2010-01-01 01:00:00 |
+---------------------------------------------+
1 row in set (0.09 sec)
MySQL [files]> select unix_timestamp(adddate(from_unixtime(0), interval 40 year));
+-------------------------------------------------------------+
| unix_timestamp(adddate(from_unixtime(0), interval 40 year)) |
+-------------------------------------------------------------+
| 1262304000 |
+-------------------------------------------------------------+
1 row in set (0.09 sec)
Ahora que pueda cada marca de tiempo Unix x
entre 1930 y 20xx y utilizarlo.
select subdate(from_unixtime(x+1262304000), interval 40 year);
Con tu ejemplo -769338000
, se obtiene
MySQL [files]> select subdate(from_unixtime(-769338000+1262304000), interval 40 year);
+-----------------------------------------------------------------+
| subdate(from_unixtime(-769338000+1262304000), interval 40 year) |
+-----------------------------------------------------------------+
| 1945-08-15 17:00:00 |
+-----------------------------------------------------------------+
1 row in set (0.09 sec)
uso de este, gracias :) –