达梦 Sql 传入一个参数 从n天前到今天生成一个日期序列
时间: 2024-10-27 10:02:32 浏览: 41
mybatis-plus 达梦 代码生成
5星 · 资源好评率100%
在达梦 SQL 中,如果你想生成从某个指定的 n 天前日期到今天的日期序列,你可以使用 `BETWEEN` 运算符以及系统函数 `CURRENT_DATE` 和 `DATE_SUB`。假设你想生成过去 n 天的数据,可以这样做:
```sql
DECLARE @StartDate DATE = DATE_SUB(CURRENT_DATE, INTERVAL n DAY); -- n天前的日期
SELECT DATEADD(DAY, i, @StartDate) AS DateValue
FROM (
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) - 1 AS i
FROM sys.columns -- 或其他足够大的表代替,这里只是为了创建序列
WHERE object_id = OBJECT_ID('tempdb..#Dates') -- 如果是在临时表里存储结果
) dates
WHERE DATEADD(DAY, i, @StartDate) BETWEEN @StartDate AND CURRENT_DATE;
```
这将返回一个日期序列,从 `@StartDate` 开始,每天增加一天,直到当前日期。
阅读全文