问题描述
大家好,
在表中,我有完成日期(2020-01-28),我想使用CompletedDate列+ PeriodDays,PeriodsMonths和PeriodsYears列中的任何数据来计算最终日期(renewaldate)。例如,PeriodYears表中的完成日期(2020-01-28)+ 1年。 renewalDate将是2021-01-28。任何帮助将不胜感激
这是我的查询
SELECT hes.CompletedDate,eve.PeriodDays,eve.PeriodMonths,eve.PeriodYears,FROM dbo.EventScheduled hes LEFT JOIN requiredEvents eve ON hes.ID = eve.ID
解决方法
这将取决于您使用的RDBMS,因为您需要使用日期函数。对于许多RDBMS,
update tablename set RenewalDate = dateadd(coalesce(day,0),PeriodDays
dateadd(coalesce(month,PeriodsMonths
dateadd(coalesce(year,PeriodsYears,CompletedDate)));
将起作用。将“ tablename”替换为实际的表。首先,您必须添加新列:alter table tablename添加列RenewalDate日期,
,使用CASE表达式选择要添加的正确间隔类型:
<MultipleChoiceType
replaceVariables={value=>this.replaceVariables(value)}
choices={solution[0].choices}
playerAnswer={this.state.myAnswerPartData?.answers[0]}
selectedChoiceChanged={(choiceIndex) =>
this.onChangedMyMultipleChoise(solution[0].choices[choiceIndex],solutionIndex)}
edit={false} />