Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.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中创建此视图_Sql_Sql Server - Fatal编程技术网

如何在SQL中创建此视图

如何在SQL中创建此视图,sql,sql-server,Sql,Sql Server,我想创建一个视图,返回与前一天相比,单个仓库的状况低于20%的物品的信息。 我的表格结构如下: 我不知道如何创建这样的视图。欢迎任何帮助或建议。提前谢谢 你的问题有点含糊。例如,如果一天的数据丢失怎么办?您还提到了仓库,但数据中没有这样的字段。同样,条件也有点难以遵循。这就是说,让我假设你是指个人文章数据中的前一天,你对下降20%的数量感兴趣 select t.* from (select t.*, lag(t.quantity) over (partition by

我想创建一个视图,返回与前一天相比,单个仓库的状况低于20%的物品的信息。 我的表格结构如下:


我不知道如何创建这样的视图。欢迎任何帮助或建议。提前谢谢

你的问题有点含糊。例如,如果一天的数据丢失怎么办?您还提到了仓库,但数据中没有这样的字段。同样,条件也有点难以遵循。这就是说,让我假设你是指个人文章数据中的前一天,你对下降20%的数量感兴趣

select t.*
from (select t.*,
             lag(t.quantity) over (partition by articlename order by dateadd) as prev_quantity
      from t
     )  t
where t.quantity < t.prev_quantity * (1 - 0.2);

使用前一天的滞后窗口功能对我来说,不清楚您是否在该表中有任何历史记录。@k_dadun。代表您的桌名。谢谢您的帮助@Gordon Linoff