繁体   English   中英

每个参数的TVP与循环

[英]TVP vs loop for each parameter

我处于一种情况,需要对购物车中的某些产品进行一些比较。 该购物车可以具有用户期望的数量,但随着时间的推移,平均每个购物车的平均物品数量约为5-15。

我的问题是有关优化/开销的问题。 我需要检查每种产品所属的部门并确定运费。 每个产品的部门都不与产品直接相关(即,产品定义表中没有部门ID列),但是我可以根据产品ID查询并获取部门ID。

这是我的问题所在。 将ID的列表传递给存储过程并在存储过程中将该列表与诸如表值参数之类的东西一起用于查询现有表会更好(更少的开销/更快)吗? 还是一次查询产品1(假设平均购物车大小在5-15的高端),获取部门ID,然后转到下一个项目,会更快吗?

我从未使用过TVP,并且尝试从堆栈溢出和msdn站点上发布的其他一些问题中学习。 因此,在我花大量时间尝试获得结果之前,我想提出一个问题。

通常,TVP应该更快(如果需要,可以更轻松地使其更快)。 列表越大,对应每个ID一次查询的TVP就越有利。

要使用TVP进行设置需要花费更多的开发工作,因此,如果您的清单永远很少(例如3个或更少),那可能就不值得了,但是绝对是一个更好的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM