【发布时间】:2016-12-08 13:47:32
【问题描述】:
我有一列包含公式。我只需要提取公式中存在的整数并将它们放在下一行中。对于这个公式,
Column A
(((23-22)/23)*100)
预期的输出如下,没有 100
Column A
23
22
我想在 sql 中实现这个。请帮忙。提前致谢。
Edit1:公式中的整数实际上是另一个表的 id。我需要加入此公式中存在的 ID 的表格
Table 1 Table 2
Tbl1ID Tabl2Id Formula
22 1 (((23-22)/23)*100)
23 2 24 + 25
24
25
我已经看到表 1 没有 Tbl1ID 为 100。
Edit2:可能我的方法不对。实际要求是我需要用与 id 关联的名称替换整数。
Table 1 Table 2 Table 3(Required)
Tbl1ID Name Tbl2Id Formula Col1
23 a 1 (((23-22)/23)*100) (((a-b)/a)*100)
22 b
【问题讨论】:
-
总是你的字符串格式相同?像上面一样。
-
为什么不是 100?你能用另一个例子来说明一下吗
-
这是解析器的工作,而不是数据库。将您的专栏带到 Java、C#、Python 等,并在那里开展工作。
-
@Buddi 没有。我可以有像 5+2 这样的公式。我需要删除这些运算符和括号。
-
在循环中使用 PATINDEX。将其放在标量 UDF 中。
标签: sql sql-server sql-server-2014