namexiaoqi

一.实际应用场景

新增数据表Medicinal,列(Id,MedicinalName,InvalidTime),Id:药品编号,MedicinalName:药品名,InvalidTime:失效日期

根据失效日期与当前日期相减,得出有效时间天数和药品状态(已经失效,即将失效(距离失效还有一个月),正常(距离失效日期超过一个月))

SELECT
    a.*, DATEDIFF(DAY, GETDATE(), InvalidTime) AS \'间隔天数\',
    CASE
WHEN DATEDIFF(DAY, GETDATE(), InvalidTime) <= 0 THEN
    \'失效\'
WHEN DATEDIFF(DAY, GETDATE(), InvalidTime) > 0
AND DATEDIFF(DAY, GETDATE(), InvalidTime) <= 30 THEN
    \'即将失效\'
ELSE
    \'正常\'
END \'药品状态\'
FROM
    Medicinal a

结果:

二.代码分析(DATEDIFF)

DATEDIFF() 函数返回两个日期之间的时间。startdate 和 enddate 参数是合法的日期表达式。day表示返回的类型,该参数还可以是year,month

 

DATEDIFF(day, startdate, enddate)

 

三.拓展(关于日期)

连接:http://www.w3school.com.cn/sql/sql_dates.asp

 

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2022-01-17
  • 2022-01-22
  • 2021-08-10
  • 2021-09-30
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-03
  • 2021-11-11
  • 2022-01-23
  • 2022-12-23
相关资源
相似解决方案