我需要在MySQL DB列中找到平均日期。日期将在2038-01-19之上,所以我不能使用UNIX_TIMESTAMP函数。有没有人知道获得平均日期的不同方式?
答案 0 :(得分:0)
为什么不使用AVG
函数?
create table test (mydate date);
insert into test values ('2042-10-01'), ('2043-10-01'), ('2044-10-01');
mysql> select avg(mydate) from test;
+-------------+
| avg(mydate) |
+-------------+
| 20431001 |
+-------------+
1 row in set (0.00 sec)
答案 1 :(得分:0)
确定。而不是使用UNIX_TIMESTAMP我使用了TO_DAYS和FROM_DAYS,它似乎按预期工作。
create table test (mydate date);
insert into test values ('2042-10-01'), ('2043-10-01'), ('2044-10-01');
mysql > SELECT FROM_DAYS(AVG(TO_DAYS(mydate))) FROM test;
+---------------------------------+
| FROM_DAYS(AVG(TO_DAYS(mydate))) |
+---------------------------------+
| 2043-10-01 |
+---------------------------------+