标签: datediff

如何在MYSQL中获取两个日期时间之间的差异?

我正在尝试这个

SELECT DATEDIFF(second,log.start_time,log.end_time) 
as seconds 
from log 
where log.log_id = "some crazy UUID";
Run Code Online (Sandbox Code Playgroud)

但我得到一个错误,因为不DATEDIFF()接受像第二个格式化程序expr.

所以我试过,

SELECT second(DATEDIFF(second,log.start_time,log.end_time)) 
as seconds 
from log
where log.log_id = "some crazy UUID";
Run Code Online (Sandbox Code Playgroud)

但这对格式化也不起作用.

mysql time datetime datediff

2
推荐指数
1
解决办法
5487
查看次数

Javascript计算两个日期yy-mm-dd之间的差异

我读过很多关于计算 javascript 中的日期差异的文章和问题,但我找不到我正在寻找的格式。

我不需要几小时、几分钟,或者信不信由你几毫秒……我只需要几天。我正在检查以确保某一天发生在同一天或另一天之后。

日期格式为 2010-10-05

我尝试了这个,但我得到的只是 NaN:

var diff =  Math.floor(( Date.parse(end_date) - Date.parse(start_date) ) / 86400000);
Run Code Online (Sandbox Code Playgroud)

javascript datediff date

2
推荐指数
1
解决办法
5833
查看次数

DateDiff函数SQL Server

如何从GETDATE()功能中减去3个月?

我想要做的是在本月前3个月获得当月的最后一天.因此,如果今天是10.22.2012,我如何从当前日期减去3个月并打印该月的最后一天,所以我希望得到这个日期:07.31.2012?

这是我到目前为止,但它只打印上个月的最后一天:

DATEADD(MILLISECOND, -3,
DATEADD(MONTH, DATEDIFF(MONTH, -4, GETDATE()), 0))
Run Code Online (Sandbox Code Playgroud)

不打印我需要的东西.任何帮助是极大的赞赏.

t-sql sql-server datediff

2
推荐指数
1
解决办法
657
查看次数

SQL Server:计算列 DATEDIFF 子句

我想要做的是以下内容:我有 3 列 ( Control_OpenDate, Control_Record Age, Control_Stage2)。插入行后,它将填充Control_OpenDate(01/27/2013) 和Control_RecordAge(计算列,参见公式)。

(datediff(day, [Control_OpenDate], getdate()))
Run Code Online (Sandbox Code Playgroud)

这给出了最新的日期。

一切正常,但我想IF在列Control_Stage2被填充时向计算列添加一个条件,如果没有,不要计算或添加文本......

如何WHERE在上面的公式中添加 -语句?

注意:我将这样的公式直接输入到列属性中,我知道有些查询可以做到这一点,但是有没有办法通过公式来做到这一点。

sql sql-server datediff formula

2
推荐指数
1
解决办法
5866
查看次数

DateTime“上个月的第一天”不返回第一天

我已经看过这个答案了,它与我所拥有的非常接近。

这是我的PHP代码:

$start = new DateTime('0:00 first day of previous month', new DateTimeZone('UTC'));
/*
if (isset($_GET['year']) && isset($_GET['month']) && checkdate($_GET['month'], 1, $_GET['year'])) {
    $start = DateTime::createFromFormat('Y-m-d', $_GET['year'] . '-' . $_GET['month'] . '-1');
}*/
$middle = DateTime::createFromFormat('U', strtotime('first day of last month', $start->format('U')));
$middle->setTimezone(new DateTimeZone('UTC'));
$end = DateTime::createFromFormat('U', strtotime('first day of 2 months ago', $start->format('U')));
$end->setTimezone(new DateTimeZone('UTC'));

var_dump($start);
var_dump($middle);
var_dump($end);
Run Code Online (Sandbox Code Playgroud)

今天是 8 月 27 日,所以我预计是 7 月 1 日、6 月 1 日和 5 月 1 日。以下是实际输出:

object(DateTime)[1]
  public …
Run Code Online (Sandbox Code Playgroud)

php datetime datediff

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

将Datediff设置为存储过程中的变量

我试图在假期表中插入一个新的假期,但是我有一个工期列,我想在存储过程中进行计算。我已经使用日期差异来计算日期,但是我想将日期差异声明为变量,然后将变量打印到insert语句的值中。使用下面的语句,我不断收到此错误:在INSERT的SET子句或列列表中多次指定了列名“ StartDate”。一列不能在同一子句中分配多个值。修改该子句以确保一列仅更新一次。如果此语句更新视图或在视图中插入列,则列别名会隐藏代码中的重复项。

CREATE PROCEDURE    spRequestHoliday    @EmployeeID int,
                                    @StartDate date,
                                    @EndDate date,
                                    @Duration int

                /*
                Name: spRequestHoliday
                Description: Inserts a requested holiday into the holidays table
                */
Run Code Online (Sandbox Code Playgroud)

SELECT DATEDIFF(Day,@StartDate,@EndDate) AS DiffDate

BEGIN
    INSERT INTO Holidays(EmployeeID, StartDate, EndDate, Duration,StartDate)
    VALUES(@EmployeeID, @StartDate, @EndDate, 'DiffDate','PE')
END
Run Code Online (Sandbox Code Playgroud)

sql variables stored-procedures datediff

2
推荐指数
1
解决办法
7179
查看次数

使用JPA标准查询比较两个日期之间的差异

我将MySQL用作应用程序的后端。

我想使用JPA条件查询执行以下查询。

SELECT * 
FROM table1 t1
WHERE datediff(now(), t1.created) >= 20;
Run Code Online (Sandbox Code Playgroud)

注意:的类型createdTIMESTAMP

我想要条件查询,例如:

CriteriaBuilder cb = getEntityManager().getCriteriaBuilder();

// select
CriteriaQuery<Table1> query = cb.createQuery(Table1.class);

// from
Root<Table1> root = query.from(Table1.class);

// where
List<Predicate> predicates = new ArrayList<Predicate>();

// TODO: add expression for datediff(now(), t1.created) >= 20

query.where(cb.and(predicates.toArray(new Predicate[0])));
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

提前致谢。

java jpa datediff criteria-api

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

postgres '1 年' 等于 '360 天'?

我想知道是否有其他人遇到过这种情况或知道有关它的信息。

今天是 2014 年 11 月 3 日,如果我检查 2013 年 11 月 5 日是否在去年内,我会得到不同的答案,具体取决于我检查的方式:1 年与 365 天

select now() - '20131105' as diff, 
case when now() - '20131105' <= '1 year' then 'within year' else 'not within year' end as yr_check,
case when now() - '20131105' <= '365 days' then 'within 365 days' else 'not within 365 days' end as day_check

2014-11-03 16:27:38.39669-06;  363 days 16:27:38.39669;  not within year;  within 365 days
Run Code Online (Sandbox Code Playgroud)

好像查询到11月9日的时候,没问题

select now() as right_now, now() - '20131109' …
Run Code Online (Sandbox Code Playgroud)

postgresql datediff

2
推荐指数
1
解决办法
1877
查看次数

PIG减去两个日期

我正试图用PIG减去两个日期.

我有这样的数据:

key_one, activation_date , deactivation_date (1456,2010-06-14 00:00:00,2011-01-01 00:00:00) (6524,2015-01-15 00:00:00,2015-02-07 00:00:00) (1541,2010-07-17 00:00:00,2012-03-07 00:00:00)

我想在deactivation_date和activation_date之间设置日期差异,并在结果中接收'key_one'和'两个日期之间的天数'.

DATA_OUTPUT  = foreach MY_DATA generate key_one,
              DaysBetween(deactivation_date, activation_date) as days_between_two_dates;
Run Code Online (Sandbox Code Playgroud)

后端错误:执行时出现异常[POUserFunc(名称:POUserFunc(org.apache.pig.builtin.DaysBetween)[long] - scope-231运算符键:scope-231)children:null []]:java.lang.NullPointerException

任何想法,如何解决这个问题?

datediff apache-pig

2
推荐指数
1
解决办法
2578
查看次数

获取两个日期之间的日历天

DateDiff功能以24小时为单位报告“日间间隔”,当询问一天中的时间变化时发生了什么事之前,这会产生奇怪的结果。

例如,如果我想获取自昨天下午以来的天数,如果还没有整整24小时,则DateDiff将返回0,而在大多数情况下,我问这个问题,我希望将昨天视为1天前,不考虑时间戳。

有没有办法让DateDiff返回日历天数?

.NET小提琴中的演示

Dim date1 As DateTime = #3/1/2017 5:00 PM#
Dim date2 As DateTime = #3/2/2017 10:00 AM#

Dim daysAgo = DateDiff(DateInterval.Day, date1, date2)
Dim msg = String.Format("Last date was {0} day(s) ago on {1}. ", daysAgo, date1.ToShortDateString())
Console.WriteLine(msg) ' Last date was 0 day(s) ago on 3/1/2017. 
Run Code Online (Sandbox Code Playgroud)

关于StackOverflow的以下问题无法解决这一细微差别:

.net vb.net datediff date

2
推荐指数
1
解决办法
1174
查看次数