【问题标题】:Getting number of days between dates - SQL [duplicate]获取日期之间的天数 - SQL [重复]
【发布时间】:2021-01-25 00:25:40
【问题描述】:
CREATE TABLE Employee(
   EmployeeID NUMBER,
   LastName varchar(100),
   FirstName varchar(100),
   Address varchar2(100),
   varchar(100),
   City varchar(100),
   State varchar(100),
   Zip varchar(7),
   StartDate DATE,
   EndDate DATE
);

我在 SQL 中创建了一个表,我需要计算 StartDate 和 EndDate 之间的天数。我曾尝试使用 DATEDIFF,但它不起作用。

【问题讨论】:

  • 您的 CREATE TABLE,如图所示,将不会执行。 ADDRESS 和 CITY 之间的额外 VARCHAR2 是怎么回事?

标签: sql oracle datetime date-arithmetic


【解决方案1】:

Oracle 有直接的日期算术:您所要求的就像减去日期一样简单:

select e.*, enddate - startdate days_diff
from employee e

这会为您提供一个表示天数的数值。如果需要整数值,可以使用 floor() 删除小数部分:

select e.*, floor(enddate - startdate) days_diff
from employee e

【讨论】:

  • 成功了!谢谢,非常感谢!
猜你喜欢
  • 1970-01-01
  • 2017-09-11
  • 1970-01-01
  • 2018-03-16
  • 1970-01-01
  • 2019-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多