标签: datediff

MySQL中日期之间的差异

我想要计算2个日期时间字段之间的月数.

有没有比获得unix时间戳和除以2 592 000(秒)更好的方法并在MySQL中进行四舍五入?

mysql datediff date date-arithmetic

72
推荐指数
9
解决办法
17万
查看次数

如何比较两个日期以查找SQL Server 2005中的时差,日期操作

我有两列:

job_start                         job_end
2011-11-02 12:20:37.247           2011-11-02 13:35:14.613
Run Code Online (Sandbox Code Playgroud)

如何使用T-SQL查找作业开始和作业结束之间经过的原始时间量?

我试过这个:

select    (job_end - job_start) from tableA
Run Code Online (Sandbox Code Playgroud)

但结果是:

1900-01-01 01:14:37.367
Run Code Online (Sandbox Code Playgroud)

sql datediff sql-server-2005 date

72
推荐指数
4
解决办法
35万
查看次数

61
推荐指数
1
解决办法
10万
查看次数

如何使用年,月和日计算T-SQL中的年龄

在T-SQL(SQL Server 2000)中计算某人年龄,月数和天数的最佳方法是什么?

datediff功能不能很好地处理年份界限,加上将月份和日期分开将是一个熊.我知道我可以在客户端相对容易地做到这一点,但我想在我的存储过程中完成它.

t-sql datediff

49
推荐指数
4
解决办法
13万
查看次数

SQL Server Group By Month

我有一个具有此架构的表

ItemID    UserID    Year    IsPaid    PaymentDate  Amount
1         1         2009    0         2009-11-01  300
2         1         2009    0         2009-12-01  342
3         1         2010    0         2010-01-01  243
4         1         2010    0         2010-02-01  2543
5         1         2010    0         2010-03-01  475
Run Code Online (Sandbox Code Playgroud)

我正在尝试查询工作,显示每个月的总计.到目前为止,我已经尝试过DateDiff和嵌套选择,但两者都没有给我我想要的东西.这是我认为最接近的:

DECLARE @start [datetime] = 2010/4/1;
SELECT ItemID, IsPaid,
(SELECT SUM(Amount) FROM Payments WHERE Year = 2010 And DateDiff(m, PaymentDate, @start) = 0 AND UserID = 100) AS "Apr",
(SELECT SUM(Amount) FROM Payments WHERE Year = 2010 AND DateDiff(m, PaymentDate, @start) =1 AND …
Run Code Online (Sandbox Code Playgroud)

sql datediff sql-server-2008

49
推荐指数
3
解决办法
10万
查看次数

JavaScript中几年,几个月,几天的两个日期之间的差异

我现在已经搜索了4个小时,并且没有找到解决方案来获取JavaScript中年,月和日的两个日期之间的差异,例如:2010年4月10日是3年,x个月和y天前.

有很多解决方案,但它们只提供日期或月份或年份的格式差异,或者它们不正确(意味着不处理一个月或闰年的实际天数等).这样做真的很难吗?

我看过:

在PHP中它很容易,但不幸的是我只能在该项目上使用客户端脚本.任何能够做到这一点的库或框架都可以.

以下是日期差异的预期输出列表:

//Expected output should be: "1 year, 5 months".
diffDate(new Date('2014-05-10'), new Date('2015-10-10'));

//Expected output should be: "1 year, 4 months, 29 days".
diffDate(new Date('2014-05-10'), new Date('2015-10-09'));

//Expected output should be: "1 year, 3 months, 30 days".
diffDate(new Date('2014-05-10'), new Date('2015-09-09'));

//Expected output should be: "9 months, 27 days".
diffDate(new Date('2014-05-10'), new Date('2015-03-09'));

//Expected output should be: "1 year, 9 months, 28 days".
diffDate(new Date('2014-05-10'), new Date('2016-03-09')); …
Run Code Online (Sandbox Code Playgroud)

javascript datediff date

41
推荐指数
10
解决办法
10万
查看次数

Google电子表格中过去日期与当前日期之间的天数

我想计算过去日期和当前日期之间经过的天数.我的过去日期是格式dd/mm/yyyy格式.我使用了下面提到的公式,但给出了正确的输出.

=DAYS360(A2,TODAY())
=MINUS(D2,TODAY())
Run Code Online (Sandbox Code Playgroud)

在上面的公式中A2= 4/12/2012(dd/mm/yyyy),我不确定TODAY是否以dd/mm/yyyy格式返回.我试过在工具栏上使用123按钮,但没有运气.

datediff date google-sheets

40
推荐指数
3
解决办法
8万
查看次数

Python:以月为单位的2个日期时间的差异

可能重复:
查找两个日期之间的月份的最佳方法(在python中)

我想知道如何获得这种差异的确切月数:

date1 = datetime.strptime(str('2011-08-15 12:00:00'), '%Y-%m-%d %H:%M:%S')
date2 = datetime.strptime(str('2012-02-15'), '%Y-%m-%d')
Run Code Online (Sandbox Code Playgroud)

date2-date1结果

datetime.timedelta(183, 43200)
Run Code Online (Sandbox Code Playgroud)

我想知道确切的月数,在这种情况下它应该返回5而不是6(因为小时)

python datediff date timedelta

39
推荐指数
4
解决办法
5万
查看次数

仅在MYSQL DATEDIFF中显示小时数

我已经忙了好几个小时,但是我无法让它发挥作用.

SQL

SELECT DATEDIFF(end_time, start_time) as `difference` FROM timeattendance WHERE timeattendance_id = '1484'

start_time =   2012-01-01   12:00:00
end_time =     2012-01-02   13:00:00
Run Code Online (Sandbox Code Playgroud)

差异是25(小时).但我得到的输出是1(天).

我怎样才能获得25小时的输出?

mysql sql datediff

36
推荐指数
4
解决办法
6万
查看次数

在sql结果中填充空日期的最简单方法是什么(在mysql或perl端)?

我正在从一个mysql表构建一个快速的csv,其查询如下:

select DATE(date),count(date) from table group by DATE(date) order by date asc;
Run Code Online (Sandbox Code Playgroud)

并通过以下方式将它们转储到perl中的文件:

while(my($date,$sum) = $sth->fetchrow) {
    print CSV "$date,$sum\n"
}
Run Code Online (Sandbox Code Playgroud)

但是数据中存在日期差距:

| 2008-08-05 |           4 | 
| 2008-08-07 |          23 | 
Run Code Online (Sandbox Code Playgroud)

我想填充数据以填写零计数条目的缺失日期,最终得到:

| 2008-08-05 |           4 | 
| 2008-08-06 |           0 | 
| 2008-08-07 |          23 | 
Run Code Online (Sandbox Code Playgroud)

我把一个非常笨拙(几乎肯定是错误的)的解决方法打包在一起,每个月都有一些日数和一些数学,但是在mysql或perl方面必须有更直接的东西.

面对为什么我这么愚蠢的任何天才想法/拍打?


我最终使用了一个存储过程,该过程为所讨论的日期范围生成临时表,原因如下:

  • 我知道我每次都会寻找的日期范围
  • 遗憾的是,有问题的服务器不是我可以在atm上安装perl模块的,并且它的状态已经破旧,它没有任何远程日期:: - y已安装

perl Date/DateTime迭代答案也非常好,我希望我能选择多个答案!

mysql perl calendar datediff

33
推荐指数
2
解决办法
2万
查看次数