sql 查找一个月内每个项目每天的数据
时间: 2023-04-04 13:01:53 浏览: 95
可以使用以下 SQL 语句来查找一个月内每个项目每天的数据:
SELECT project, date, SUM(data)
FROM table_name
WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL 1 MONTH) AND NOW()
GROUP BY project, date;
这将返回每个项目每天的数据总和,其中日期在最近一个月内。
相关问题
SQL语句 获取表中每一个name最新id的记录数据
可以使用以下 SQL 语句获取表中每一个 name 最新 id 的记录数据:
```
SELECT t1.*
FROM your_table t1
LEFT JOIN your_table t2
ON t1.name = t2.name AND t1.id < t2.id
WHERE t2.id IS NULL;
```
这里假设表名为 `your_table`,其中包含 `id` 和 `name` 两个字段。这个 SQL 语句会对表中的每一行记录,查找是否存在一个相同的 `name`,但是 `id` 更大的记录,如果不存在,说明当前记录是该 `name` 最新的记录,因此将其输出。
生成一个sql语句 查出id重复数据行,删除重复数据行
你可以使用以下 SQL 语句来查找并删除重复的数据行:
```sql
DELETE your_table
WHERE id IN (
SELECT id
FROM (
SELECT id, ROW_NUMBER() OVER (PARTITION BY id ORDER id) AS row_number
FROM your_table
) AS subquery
WHERE row_number > 1
);
```
请将 `your_table` 替换为你要操作的表名。这个语句会根据 `id` 列的值来判断重复数据行,并删除除了每个 `id` 值中第一行之外的其他重复行。通过使用窗口函数 `ROW_NUMBER()`,我们可以为每个 `id` 分配一个行号,然后通过子查询删除行号大于 1 的行。这样可以确保只保留每个 `id` 值的第一行,删除其他重复的行。