1

好的,所以我正在重写一些提供给我的脚本,其中一部分脚本是从两个不同的列构建一个日期,其中一个列可能包含诸如此类的数据3|15,然后将构建的日期与今天的日期进行比较。

原始查询部分:

CASE WHEN rs.RecurrencePattern = 'Monthly'  AND DAYDIFF((CreateDate(GetYear(rs.ws_wg_mig_start_date),GetMonth(rs.ws_wg_mig_start_date), toint(StrParts(rs.RecurrencePatternParms, '|',1)))),(now())) < 0 THEN GetMonth(rs.ws_wg_mig_start_date)+1

我认为这是 MySQL,但我不确定。我正在尝试在 SQL Server 中重新创建它,到目前为止,我正在使用 DATEFROMPARTS 并将所有内容串在一起。我使用 NULLIF(CHARINDEX 来获取 之后的值,|但如果它不存在,则整个日期字段为空。在我发疯之前,我需要另一双眼睛。

当前 SQL 代码:

DATEFROMPARTS(datepart(year,rs.ws_wg_mig_start_date),datepart(month,rs.ws_wg_mig_start_date),Convert(int,Right(recurrence_pattern_params, NULLIF(CHARINDEX('|', reverse(recurrence_pattern_params)),0)-1)))
4

0 回答 0