SQL Server:删除具有特定长度的单词

问题描述 投票:-1回答:2

我需要从列中删除具有特定长度的单词。在我的情况下,我需要删除长度为<= 2的单词>>。我总共有100万条记录。

+---------------------------+------------------------+
| Input                     | Output                 |
+---------------------------+------------------------+
| Steel rod 10 X 15 MM      | Steel rod              |
+---------------------------+------------------------+
| Syringe SM B 2.5 ML       | Syringe 2.5            |
+---------------------------+------------------------+
| 3.5 ML Syringe Disposable | 3.5 Syringe Disposable |
+---------------------------+------------------------+
| Syringe Disposable 2.5 ML | Syringe Disposable 2.5 |
+---------------------------+------------------------+

即使我也不需要在[[Input

描述”列中输入数字。我具有删除数字的功能。请指教。我需要从列中删除具有特定长度的单词。在这种情况下,我需要删除长度<= 2的单词。我总共有100万条记录。 + --------------------------- + -----------------...] >
sql sql-server sql-server-2014
2个回答
0
投票
如果您的SQL Server版本不支持分割功能,您可以尝试编写自己的分割功能以分割空间,以使字符串进入数据行。

使用CTE来获取数据行,然后使用FOR XML PATH进行group by ... concat和您的逻辑(Len需要大于2)


0
投票
SQL Server具有非常差的字符串处理功能。当您将数据加载到数据库中时,可能要执行此操作。
© www.soinside.com 2019 - 2024. All rights reserved.