如何获得第一个和最后一个表格行之间的差异?

离子

我有下表:

ID  val  DateTime  
1   20   2018-12-11 14:57:20.620   
2   30   2018-12-11 20:57:20.940
3   15   2018-12-12 00:57:20.460
4   41   2018-12-12 04:57:20.830
5   22   2018-12-12 11:57:20.077

另外,我有以下存储过程:

ALTER PROCEDURE [dbo].[C_PS_PS]
 -- Add the parameters for the stored procedure here
 @DataStart datetime=null,
 @DataStop  datetime=null
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here
SELECT [ID]
      ,[val]
      ,[DateTime]
  FROM [DB].[dbo].[C_Tbl]
  WHERE DateTime between @DataStart and @DataStop
END

execute [C_PS_PS] '2018-12-11 14:57:20.620','2018-12-12 11:57:20.077'

当我执行它时,我得到了上表。我的问题是:我怎么能得到的差异val第一和最后一行之间的不同的DataStartDataStop

为了举例说明我想要什么,假设我想用 date2018-12-11 20:57:20.9402018-12-12 04:57:20.830.

fdkgfosfskjdlsjdlkfsf

你可以做这样的事情。cte带来最旧的日期及其valcte2带来最新的日期及其val然后最终使用cross join并减去cte.valcte2.val(或反之亦然):

;with cte as
(
    select top 1 [DateTime], val from [dbo].[C_Tbl] 
    WHERE [DateTime] between @DataStart and @DataStop
    order by [DateTime] asc
),
cte2 as
(
    select top 1 [DateTime], val from [dbo].[C_Tbl] 
    WHERE [DateTime] between @DataStart and @DataStop
    order by [DateTime] desc
)
select  
cte.[DateTime], cte2.[DateTime], cte.val, cte2.val,
--DATEDIFF( dd , cte.[DateTime], cte2.[DateTime]) 'difference_days' 
cte.val-cte2.val
from cte cross join cte2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获得第一个和最后一个时间顺序之间的差异?

来自分类Dev

第一个和最后一个传入帖子之间的情感得分差异

来自分类Dev

如何在第一个和最后一个日期之间填充日期?

来自分类Dev

以小时为单位获取第一个和最后一个实例之间的差异

来自分类Dev

如何获得模式的第一个和最后一次出现之间的所有线?

来自分类Dev

计算每个用户的第一个和最后一个日期之间的差异时如何解决错误?

来自分类Dev

如何在html代码中选择第一个表格的最后一行?

来自分类Dev

如何使用Java8流获得最后一个元素和第一个元素的值之间的差?

来自分类Dev

如何获得第一个和最后一个相关事件而无需执行额外的子查询?

来自分类Dev

Spotfire中最后一个和第一个之间的区别

来自分类Dev

计算第一个和最后一个出现的数字之间的NA

来自分类Dev

第一个和最后一个之间的li风格不同

来自分类Dev

找到一行的第一个和最后一个跨度

来自分类Dev

如何获取javascript中特殊字符之间的第一个和最后一个单词或字符?

来自分类Dev

如何在PostgreSQL中的一行上获取第一个和最后一个值

来自分类Dev

删除第一个和最后一个出现列值的行

来自分类Dev

删除行中第一个和最后一个元素的填充

来自分类Dev

更改PHP行的第一个和最后一个值

来自分类Dev

删除行中第一个和最后一个元素的填充

来自分类Dev

SSRS如何获取矩阵行组的第一个和最后一个值?

来自分类Dev

如何从list <string>获取第一个和最后一个值?

来自分类Dev

如何访问字典中的第一个和最后一个元素?

来自分类Dev

如何忽略xpath中的第一个和最后一个元素

来自分类Dev

父母和第一个/最后一个孩子的边际崩溃如何工作?

来自分类Dev

如何从CSV列中获取第一个和最后一个元素

来自分类Dev

如何通过XPath选择第一个和最后一个元素?

来自分类Dev

如何删除列中的第一个单词和最后一个单词?

来自分类Dev

如何获取文件中的第一个和最后一个日期

来自分类Dev

如何定义第一个和最后一个对象并停止循环

Related 相关文章

  1. 1

    如何获得第一个和最后一个时间顺序之间的差异?

  2. 2

    第一个和最后一个传入帖子之间的情感得分差异

  3. 3

    如何在第一个和最后一个日期之间填充日期?

  4. 4

    以小时为单位获取第一个和最后一个实例之间的差异

  5. 5

    如何获得模式的第一个和最后一次出现之间的所有线?

  6. 6

    计算每个用户的第一个和最后一个日期之间的差异时如何解决错误?

  7. 7

    如何在html代码中选择第一个表格的最后一行?

  8. 8

    如何使用Java8流获得最后一个元素和第一个元素的值之间的差?

  9. 9

    如何获得第一个和最后一个相关事件而无需执行额外的子查询?

  10. 10

    Spotfire中最后一个和第一个之间的区别

  11. 11

    计算第一个和最后一个出现的数字之间的NA

  12. 12

    第一个和最后一个之间的li风格不同

  13. 13

    找到一行的第一个和最后一个跨度

  14. 14

    如何获取javascript中特殊字符之间的第一个和最后一个单词或字符?

  15. 15

    如何在PostgreSQL中的一行上获取第一个和最后一个值

  16. 16

    删除第一个和最后一个出现列值的行

  17. 17

    删除行中第一个和最后一个元素的填充

  18. 18

    更改PHP行的第一个和最后一个值

  19. 19

    删除行中第一个和最后一个元素的填充

  20. 20

    SSRS如何获取矩阵行组的第一个和最后一个值?

  21. 21

    如何从list <string>获取第一个和最后一个值?

  22. 22

    如何访问字典中的第一个和最后一个元素?

  23. 23

    如何忽略xpath中的第一个和最后一个元素

  24. 24

    父母和第一个/最后一个孩子的边际崩溃如何工作?

  25. 25

    如何从CSV列中获取第一个和最后一个元素

  26. 26

    如何通过XPath选择第一个和最后一个元素?

  27. 27

    如何删除列中的第一个单词和最后一个单词?

  28. 28

    如何获取文件中的第一个和最后一个日期

  29. 29

    如何定义第一个和最后一个对象并停止循环

热门标签

归档