【发布时间】:2016-07-26 15:48:50
【问题描述】:
我需要将一列中的数据截断为 10 个字符。但是,我不能有任何重复项,所以我希望任何重复项以 ~1 结尾,第二次重复以 ~2 结尾。这是我所拥有的示例:
Column
------
The ABC Company Inc.
The ABC Cooperative
XYZ Associates LLC.
我希望结果是:
Column
------
The ABC ~1
The ABC ~2
XYZ Associ
结尾不一定是~1 或~2,我只需要在截断后让它独一无二。截断后可能有超过 3 或 4 个重复。
到目前为止,我只是手动截断和编辑表格:
update Table set Column = Left(Column, 10) where len(Column) > 10
【问题讨论】:
-
如果您截断“The ABC Company Inc.”和“The ABC Cooperative”到 10 个字符,您将留下两个“The ABC Co”,导致重复。
-
ABC ~1 IS 10 个字符
-
如果有 10 个或更多重复项怎么办?
-
老实说,如果有 10 个或更多,我会去删除重复项...大声笑...就我而言,我遇到的最多是 5 个重复项。
标签: sql sql-server sql-server-2008 tsql sql-server-2012