想象一下包含字段“日期时间”的表格。示例行:
我需要从粗线开始,但是从现在开始的30天内......
换句话说,过去30天内具有最大日期的行。
假设每天至少有一行...... ,每次总共30行非常感谢任何帮助。
答案 0 :(得分:2)
您可以group by
日期时间的日期部分,并获得每天的最大值。
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
要从表中获取此类行的所有字段,请使用
select * from tablename where `datetime` in (
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
)
答案 1 :(得分:0)
从your_table中选择* 其中sysdate和sysdate-30之间的日期时间
答案 2 :(得分:0)
select *, max(datetime)
from tablename
where datetime >= date(now())-interval '30' day
group by date(datetime);
啊,这也适用于连接。
我改变以更精确地解决目标的另一件事是:
max(time(datetime))