0

我有一个带有字符串字段的表,其中可以是一个数字或多个数字(用逗号分隔)。我需要找到值(转换为整数时)和未指定值之间的差异。为简单起见,我只说要比较的值是静态值 10。

示例表:

iId vchStringNumbers vchSubtractedStringNumbers 1 20, 30, 40 2 50 3 20

期望的结果:

iId vchStringNumbers vchSubtractedStringNumbers 1 20, 30, 40 10, 20, 30 2 50 40 3 20 10

有没有办法在 SQL 中实现这一点?如果在excel或类似的东西中更容易,也请随时回答。

4

2 回答 2

1

如果可以访问 Excel 2019 或 Excel O365,还可以使用 (in B2):

=TEXTJOIN(", ",,FILTERXML("<t><s>"&SUBSTITUTE(B2,",","</s><s>")&"</s></t>","//s")-10)
于 2020-07-21T20:13:26.847 回答
0

将您的CS数据放在 Excel 列中,选择单元格并运行这个微小的VBA宏:

Sub SubtractCSV()
    Dim r As Range
    For Each r In Selection
        ary = Split(r.Value, ",")
        For i = LBound(ary) To UBound(ary)
            ary(i) = CLng(Trim(ary(i))) - 10
        Next i
        r.Offset(0, 1).Value = Join(ary, ",")
    Next r
End Sub
于 2014-03-19T23:12:44.890 回答