declare @LastMenstruation date,@ExpectedDateOfChildbirth date
declare @DurationWeeks int,@DurationDays int,@ExpectedWeeks int,@ExpectedDays int,@ExpectedTotalWeeks int
declare @DaysRemaining int
set @ExpectedTotalWeeks=40
set @LastMenstruation='yyyy-MM-dd'
set @ExpectedDateOfChildbirth=dateadd(week,@ExpectedTotalWeeks,@LastMenstruation)
--year | quarter | month | week | day | hour | minute | second | millisecond
set @DurationWeeks=datediff(week,@LastMenstruation,getdate())
set @DurationDays=datediff(day,@LastMenstruation,getdate())
set @ExpectedWeeks=datediff(week,@LastMenstruation,@ExpectedDateOfChildbirth)
set @ExpectedDays=datediff(day,@LastMenstruation,@ExpectedDateOfChildbirth)
select
@LastMenstruation [末次月经],@ExpectedDateOfChildbirth [预产期]
,cast(@ExpectedWeeks as varchar)+N' 周('+cast(@ExpectedDays as varchar)+N' 天)' [预计]
,cast(@DurationWeeks as nvarchar)+N' 周 + '+cast(@DurationDays%7 as varchar)+N' 天('+cast(@DurationDays as varchar)+N' 天)' [持续]
,cast((@ExpectedWeeks-@DurationWeeks) as varchar)+N' 周('+cast((@ExpectedDays-@DurationDays) as varchar)+N' 天)' [剩余]
sqlserver dateadd&datediff
最新推荐文章于 2024-08-26 20:07:15 发布