Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 条件窗口功能_Sql Server_Function_Tsql_Windowing_Partition By - Fatal编程技术网

Sql server 条件窗口功能

Sql server 条件窗口功能,sql-server,function,tsql,windowing,partition-by,Sql Server,Function,Tsql,Windowing,Partition By,假设这个查询 SELECT SUM (Quantity) OVER (Partition By Symbol ORDER BY PositionID ASC ROWS UNBOUNDED PRECEDING) as RemainedQty 是否可以在窗口功能中定义条件? 在这个例子中,我需要在每一行的不同情况下得到总和(数量)。 (假设)类似于: 是的,这是可能的 从表中选择SUM(当SomeColumn='X'时为case,其他数量为0 end)作为sumx,SUM(当SomeC

假设这个查询

SELECT  
    SUM (Quantity) OVER (Partition By Symbol ORDER BY PositionID ASC ROWS UNBOUNDED PRECEDING) as RemainedQty
是否可以在窗口功能中定义条件? 在这个例子中,我需要在每一行的不同情况下得到总和(数量)。 (假设)类似于:

是的,这是可能的

从表中选择SUM(当SomeColumn='X'时为case,其他数量为0 end)作为sumx,SUM(当SomeColumn='y'时为case,其他数量为0 end)作为sumy

SELECT
SUM (Quantity) OVER (Partition By ...) Where SomeColumn='X' as RemainedQty_X,
SUM (Quantity) OVER (Partition By ...) Where SomeColumn='Y' as RemainedQty_Y ...