我有一个静音,我需要比较两个差异行中的时间,就像这样
categoryid item_id group date 1 10 abc 2008-03-07 03:02:00 1 35 bcd 2008-04-03 10:03:00 2 13 cde 2008-03-13 07:18:00 2 40 ced 2008-03-13 08:41:00 2 44 cef 2008-03-13 09:41:00
我需要找到第一行和第二行的时间差异 - 它们属于第一行...而且它在它下面继续并且cat1
答案 0 :(得分:0)
试试这个(虽未测试)
SELECT datediff(day,t.date,d.date) diff
FROM @t d
JOIN @t t ON d.categoryid = t.categoryid
and t.itemid <> d.itemid
and datediff(day,t.date,d.date) >0
答案 1 :(得分:0)
我会这样说,但校长是相同的
SELECT r1.item_id AS r1Id, r2.item_id AS r2Id, datediff(day, r1.date, r2.date) AS diff
FROM @t r1
INNER JOIN @t r2 ON r1.categoryid = r2.categoryid
WHERE r1.item_id != r2.item_id
答案 2 :(得分:0)
首先,非常感谢大家。很抱歉没有正确缩进问题。我得到了它的工作,但有一个存储过程,
写了一个while循环来循环遍历所有类别id,item id's ...将它们变成变量并将它们分配给一个查询,我在那里计算这两者之间的日期
我无法将代码放在这里,因为问题是从办公室张贴的,现在我在家里。无论如何,谢谢大家。