首页 > 解决方案 > 如何在 SQL Server 的 varchar 列中替换/删除后跟数字的子字符串?

问题描述

我目前有一个表,其中有一ServiceComment列是表中其他列的组合。

在此处输入图像描述

如何从列中删除子字符串DIST:和以下数字?Description:ServiceComment

我可以弄清楚如何使用DIST:ServiceComment列中删除

REPLACE(ServiceComment, 'DIST:', '')

返回此结果:

在此处输入图像描述

寻找一种方法来DIST:像这样删除前面的数字和前面的数字

在此处输入图像描述

DIST: number或者以某种方式将其添加到表中的其他记录会更容易吗?

标签: sql-server

解决方案


您可以使用此代码删除子字符串 DIST: 以及描述前的以下数字:

    SELECT REPLACE(
              coment,
              SUBSTRING(
                           coment,
                           (CHARINDEX('dist:', coment, 1)),
                           (CHARINDEX('description', coment, 1)) - (CHARINDEX('dist:', coment, 1))
                       ),
              ''
          )

从aa;


推荐阅读