以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何修改视图?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158334)

--  作者:rogen
--  发布时间:2020/11/16 21:04:00
--  如何修改视图?
在sql里写了个多表统计的视图,里面是按时间范围(比如统计日期>=\'2020-11-11\')统计的库存,取名 库存视图
在狐表里引用这个视图,但希望能在狐表里修改视图里的时间条件(比如改为  统计日期>=\'2020-11-20\'),然后更新视图
可以实现吗?

--  作者:有点蓝
--  发布时间:2020/11/16 22:12:00
--  
视图里不要加条件,调用视图的时候再加,比如:select * from 库存视图 where 统计日期>=\'2020-11-20\'
--  作者:rogen
--  发布时间:2020/11/17 8:10:00
--  
以下是引用有点蓝在2020/11/16 22:12:00的发言:
视图里不要加条件,调用视图的时候再加,比如:select * from 库存视图 where 统计日期>=\'2020-11-20\'

这个条件,不是筛选条件,是统计库存的时间范围条件(某个时间段里的产品出库与入库数的统计),不能单纯的用where来过滤的

[此贴子已经被作者于2020/11/17 8:18:44编辑过]

--  作者:rogen
--  发布时间:2020/11/17 8:26:00
--  

我希望实现的效果是:利用视图,统计产品的库存(某时间范围内 入库总和-出库总和),并能在狐表里分页加载

 

在sql里写一个固定时间范围的视图,已经写好了,也能在狐表里引用这个视图,并做分页效果(OK)

但这个视图里的时间范围是固定的,没法在狐表里动态更改(NG)

 

我在狐表里把视图代码写在sq/command里,动态传入时间范围参数,生成dt,能实现动态时间范围的库存统计(OK)

但就是不知怎么对这个dt做分页加载(NG)

 


--  作者:有点蓝
--  发布时间:2020/11/17 8:51:00
--  
肯定可以的,把视图的完整sql发上来看看
--  作者:rogen
--  发布时间:2020/11/17 9:00:00
--  

语句太长,放文本里了

里面有四处日期条件: 日期 > 2020 / 11 / 1,希望这个日期是可以动态改变的

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql语句.txt


--  作者:有点蓝
--  发布时间:2020/11/17 9:48:00
--  
里面有分组,而且日期范围不定,确实没有办法。建议改为使用存储过程,动态拼接sql,或者把sql直接放到foxtable里调用。

至于分页,建议使用Row_Number手工分页:http://www.foxtable.com/webhelp/topics/2721.htm

如果要动态改视图,也不是不行,但是不建议使用,首先多用户的情况下会有冲突,A改为2020 / 11 / 1,B改为2020 / 11 / 2,这就乱套了。再说视图重建是比较废资源的,效率也不高

--  作者:rogen
--  发布时间:2020/11/17 9:56:00
--  

我记得好像在帮助文档里看到过一眼怎么动态保存视图的,但没找到

老师可以帮我找一下帮助链接吗


--  作者:有点蓝
--  发布时间:2020/11/17 10:03:00
--  
帮助没有这种用法。百度吧https://www.baidu.com/s?wd=sqlserver%20%E4%BD%BF%E7%94%A8sql%E4%BF%AE%E6%94%B9%E8%A7%86%E5%9B%BE
--  作者:qingyang
--  发布时间:2020/11/17 10:30:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql.txt
视图写法可改一下,个人感觉没有动态修改视图条件的