我DateDiff在 Power BI 中使用 DAX 来计算两个日期之间的天数,如下所示:
DaysDiff = DATEDIFF('MyTable'[Sales Order Date],
'MyTable'[Paid Date],DAY)
Run Code Online (Sandbox Code Playgroud)
然而,该公式返回一些看起来奇怪的结果,例如:
我希望看到日期之间的实际天数。例如,3/31/2017 和 12/4/2017 之间的天数应为248。
两个源列都被格式化为日期,并显示在实际数据中,如下所示。
差值应该如何计算?我还尝试了不同的公式,它返回相同的结果:
DayDiff = 1.* ('MyTable'[Paid Date]-'MyTable'[Sales Order Date])
Run Code Online (Sandbox Code Playgroud) 我有一个来自 mysql 的查询,该查询一直在我最近迁移到 DB2 的表上运行。
由于下面的行,该查询现在在 DB2 上失败,表示无法找到 DATEDIFF。我假设只是因为这不是 db2 上的有效函数。
在 DB2 上是否有类似的东西可以保持性能和功能?
SELECT DISTINCT
LEAST(180, DATEDIFF(curdate(), start_date)) as days
FROM table2
where expire_date > curdate()
Run Code Online (Sandbox Code Playgroud) 这是我使用datediff工作的SQL语句:
SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate
FROM B134HREC
WHERE datediff (dd, '2006-05-05', getdate()) > 90
GROUP BY b134_rmcid, b134_recdate
ORDER BY b134_recdate DESC, b134_rmcid
Run Code Online (Sandbox Code Playgroud)
我需要用MAX替换Hardcoded日期'2006-05-05'(b134_recdate),如下所示:
SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate
FROM B134HREC
where datediff (dd, MAX(b134_recdate), getdate()) > 90
GROUP BY b134_rmcid, b134_recdate
ORDER BY b134_recdate DESC, b134_rmcid
Run Code Online (Sandbox Code Playgroud)
但我收到此错误消息:
聚合可能不会出现在WHERE子句中,除非它位于HAVING子句或选择列表中包含的子查询中,并且要聚合的列是外部引用.
知道如何修复我的SQL语句吗?
使用下面的PHP代码,我希望得到'2'作为我的输出.但我得到'1'.
有人知道为什么吗?
$returndate = preg_replace('#(\d+)/(\d+)/(\d+)#', '$3-$2-$1', '2011-03-28');
$departdate = preg_replace('#(\d+)/(\d+)/(\d+)#', '$3-$2-$1', '2011-03-26');
$diff = abs(strtotime($returndate) - strtotime($departdate));
$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));
echo $days; // expecting 2, but get 1
Run Code Online (Sandbox Code Playgroud)
非常感谢任何帮助.
我的表中有2个日期列(start_date, end_date).
我试过了Datediff(day, start_date, end_date),但我提示:
列名无效
如何计算这两列之间的日期差异?
我试图计算自帖子发布以来的日子.SQL将日期和时间保存pins在列的表中time.格式为2013-11-20 10:36:01.
我已经在http://www.w3schools.com/sql/func_date_format.asp上了解了如何执行此操作
并提出以下代码:
<?php
$dayssince = mysql_query("SELECT DATEDIFF(day,'CURDATE()','$pinDetails->time') AS DiffDate FROM pins WHERE id ='$pinDetails->id'");
?>
<?php echo $dayssince; ?>
Run Code Online (Sandbox Code Playgroud)
$pinDetails->time数据库中的日期戳在哪里.
但是,没有任何显示,甚至没有错误编号.
编辑:
我使用此代码使用它:
$result = mysql_query("SELECT DATEDIFF(CURDATE(), '$pinDetails->time')");
$dayssince = mysql_result($result, 0);
Run Code Online (Sandbox Code Playgroud) 如何在VBScript中编码波纹管条件?
>= 0 [Red] Ex.: {0,1,2,3,4...}
Between -1 and -7 [Yellow] Ex.: {-1,-2,-3,-4,-5,-6,-7} ONLY
Greater or equal than -8 [Green] Ex.: {-8,-9,-10,-11...}
Run Code Online (Sandbox Code Playgroud)
我有以下代码,Mydate是一个有效的日期,Red部分是OK.问题是黄色,我不知道我能不能像你一样做范围.它看起来像是被忽略并且变黄更大的范围.
<%
IF DateDiff("d", MyDate, Now()) >= 0 THEN
%>
[Red]
<%
ELSEIF DateDiff("d", MyDate, Now()) =< -1 OR DateDiff("d", MyDate, Now()) >= -8 THEN
%>
[Yellow]
<%
ELSE
%>
[Green]
<%
END IF
%>
Run Code Online (Sandbox Code Playgroud) 如何使用SQL获取即将到来/下周五的日期?
如果当天是星期五,那么返回今天的日期.
非常感谢,任何提示和建议表示赞赏!
我正在尝试使用date_diff比较两个日期,但它甚至没有接近正确的数字.要进行故障排除,我正在做一个简单的硬编码测试:
$date1 = date_create("2014-03-20");
$date2 = date_create("2017-11-13");
$diff = date_diff($date1,$date2);
echo $diff->format('%r%d');
Run Code Online (Sandbox Code Playgroud)
这对我来说输出"24" - 所以它甚至不在球场.任何想法在这里出了什么问题?
如何获取Google Big Query中两个时间戳字段之间的天数差异?
我知道的唯一功能是Datediff,该功能仅在旧版SQL中有效,但在标准SQL中。
例如:20180115与20180220之间的差是36天。