财政年度结束
FINANCIAL YEAR CLOSE
我有一个 SQL 查询,最初是这个-
DELETE FROM table_1
WHERE column_1 IN ( SELECT column_1 FROM table_2 WHERE
column_3 < CURRENT - INTERVAL(N) MONTH TO MONTH)
现在我的建议已告知使用财务结算年度而不是当前,例如:
DELETE FROM table_1
WHERE column_1 IN ( SELECT column_1 FROM table_2 WHERE
column_3 < FINANCIAL YEAR CLOSE - INTERVAL(N) MONTH TO MONTH)
财政年度结束时间为 3 月底。
我不知道应该如何合并这些更改。
由于 FINANCIAL YEAR CLOSE 可能因公司而异,因此它不是内置函数,必须手动计算。
您需要使用 CURRENT 并从该日期提取年份部分并从 [当前年份]-03-31 创建一个新日期并在您的查询中使用它。
谷歌搜索让我认为这是 IBM 的 Informix 数据库。
您始终可以将 TO_DATE() 与特定掩码一起使用,例如:
$dbaccess stores7 -
Database selected.
> SELECT (TO_DATE("2018-03-01","%Y-%m-%d") - INTERVAL (1) MONTH TO MONTH) FROM TABLE(SET{1});
(constant)
2018-02-01 00:00:00.00000
1 row(s) retrieved.
>
Database closed.
$
无论您输入什么作为日期字符串,都完全取决于您;)
我有一个 SQL 查询,最初是这个-
DELETE FROM table_1
WHERE column_1 IN ( SELECT column_1 FROM table_2 WHERE
column_3 < CURRENT - INTERVAL(N) MONTH TO MONTH)
现在我的建议已告知使用财务结算年度而不是当前,例如:
DELETE FROM table_1
WHERE column_1 IN ( SELECT column_1 FROM table_2 WHERE
column_3 < FINANCIAL YEAR CLOSE - INTERVAL(N) MONTH TO MONTH)
财政年度结束时间为 3 月底。
我不知道应该如何合并这些更改。
由于 FINANCIAL YEAR CLOSE 可能因公司而异,因此它不是内置函数,必须手动计算。
您需要使用 CURRENT 并从该日期提取年份部分并从 [当前年份]-03-31 创建一个新日期并在您的查询中使用它。
谷歌搜索让我认为这是 IBM 的 Informix 数据库。
您始终可以将 TO_DATE() 与特定掩码一起使用,例如:
$dbaccess stores7 -
Database selected.
> SELECT (TO_DATE("2018-03-01","%Y-%m-%d") - INTERVAL (1) MONTH TO MONTH) FROM TABLE(SET{1});
(constant)
2018-02-01 00:00:00.00000
1 row(s) retrieved.
>
Database closed.
$
无论您输入什么作为日期字符串,都完全取决于您;)