|
|
1
13
在我看来,当同一个例程需要在多个不同的应用程序之间使用,或者用于数据库或表之间的ETL时,存储过程应该仅用于数据操作,仅此而已。基本上,尽可能多地使用代码,直到遇到DRY原则,或者您所做的只是将数据从数据库中的一个位置移动到另一个位置。 视图可用于为数据提供替代或简化的“视图”。因此,我会选择一个视图,因为您实际上并不是在操纵数据,而是在寻找一种不同的显示方法。 |
|
|
2
7
不确定是否是非此即彼的选择。存储过程可以做很多视图难以完成的事情(比如在临时表中填充数据,然后在临时表上运行游标,然后进行聚合并返回结果集)。 另一方面,视图可以隐藏复杂的sql/访问权限,并显示模式的修改视图。 我认为两者都在方案中占有一席之地,并且对于成功的模式实现都很有用。 |
|
|
3
6
当需要反规范化和过滤时,我经常访问存储过程中的视图。 |
|
|
4
5
但是,您可以传入这些搜索参数,并直接对下划线(索引)表运行查询。缺点是每次运行过程时都需要获取结果,根据服务器配置的不同,在视图中也可能出现这种情况。
|
|
Sweepy Dodo · JSON lite的格式化 1 年前 |
|
|
giantjenga · 优化整数向量到二进制向量的转换 1 年前 |
|
Zegarek · Postgresql递归查询未提供预期结果 1 年前 |
|
|
Joe · 为什么这两个查询之间的性能存在如此大的差异? 1 年前 |
|
tic-toc-choc · 在`dplyr中高效使用列表进行过滤` 1 年前 |