【发布时间】:2020-07-08 11:16:27
【问题描述】:
我有一个有 4 列的表格:
Col1 Col2 Col3 Col4
1 2 Col1+Col2 3
3 4 Col1*Col2 12
6 3 Col1/Col2 2
Col1, Col2 会有一些值,col3 会有一个公式,基于该公式我需要在 col4 中填充值。我已经尝试使用动态 SQL 逐行运行,但我的表中有数百万条记录,并且执行脚本需要很长时间。请提出处理这种情况的最简单和最快的方法。
【问题讨论】:
-
公式有多复杂? SQL 并不真正适合这种类型的处理。
-
仅限普通算术运算。可能有多个列,但像 col1 +col2 /Col3 * Col4。
-
这里没有“简单”或“快速”。您实际上是在 [Col3] 中定义一种语言,并且您必须创建一个解析器。这不是一件容易的事。
-
你的表有主键吗?批量迭代在这里可能会有所帮助。
-
@PiyushBhardwaj this 也可能有用。
标签: sql sql-server