删除sql列中字符串中的第四、第五、第六个位置

删除sql列中字符串中的第四、第五、第六个位置,sql,sql-server,Sql,Sql Server,我有一个字段,其值类似于Activity\u ID=AHR265A06AH、AHR265A48AHTEST 我必须删除字符串中的第四、第五、第六个位置 以下是我尝试过的,我相信这不是一种干净的编写查询的方式。 有谁能给我指路吗。 但我的查询得到了我需要的输出 SUBSTRING(ACTIVITY_ID ,1,3) + RIGHT(ACTIVITY_ID, LEN(ACTIVITY_ID) - 6) AS ActivityLookup 输入: 活动标识 AHR265A06AH AHR265A48

我有一个字段,其值类似于
Activity\u ID=AHR265A06AH、AHR265A48AHTEST

我必须删除字符串中的第四、第五、第六个位置

以下是我尝试过的,我相信这不是一种干净的编写查询的方式。 有谁能给我指路吗。 但我的查询得到了我需要的输出

SUBSTRING(ACTIVITY_ID ,1,3) + RIGHT(ACTIVITY_ID, LEN(ACTIVITY_ID) - 6) AS ActivityLookup
输入

活动标识

AHR265A06AH

AHR265A48AH测试

输出

活动标识

AHRA06AH

AHRA48AH测试


您可以使用
STUFF()
函数:

从字符4开始,将3个字符替换为零

STUFF(ACTIVITY_ID,4,3,'') AS ActivityLookup

您可以使用
STUFF()
函数:

从字符4开始,将3个字符替换为零

STUFF(ACTIVITY_ID,4,3,'') AS ActivityLookup

为什么您认为您的解决方案无效或不是最佳方法?它对于您试图实现的目标非常有效。您是否在寻找其他方法?注意:子字符串(1,3)在功能上与左(3)相同,但实际上没有更简单的方法来实现这一点。永远不要在列中存储csv数据@Martin Parkin-我认为可以有更好的方法来编写查询..是的,它工作得非常好,但我正在尝试了解是否有其他方法可以用最好的方法编写查询。为什么你认为你的解决方案无效或是最好的方法?它对于您试图实现的目标非常有效。您是否在寻找其他方法?注意:子字符串(1,3)在功能上与左(3)相同,但实际上没有更简单的方法来实现这一点。永远不要在列中存储csv数据@Martin Parkin-我认为可以有更好的方法来编写查询..是的,它工作得非常好,但我正在尝试了解是否有其他方法可以用最好的方法编写查询。