Z góry dziękuję za Twoją pomoc. Chciałbym usunąć częściowy ciąg z wybranego zapytania, w którym znajduje się legenda "ProcessError: obiektyw", a następnie 12 cyfr liczbowych i zastąp te 12 cyfr przez myślników. Dodam wynik wyniku bieżącego zapytania:

          Error Description
 ProcessError : Lens 000300084502 is defect/scrap lens! 
 ProcessError : 20007  rejected 
 ProcessError : Lens 046000085174 is defect/scrap lens! 
 ProcessError : Lens 011900085176 is defect/scrap lens! 
 ProcessError : Lens 001200085188 is defect/scrap lens! 
 ProcessError : 20006  operation canceled 
 ProcessError : Lens 000300085787 is defect/scrap lens! 

Dziękuję i życzę miłego weekendu.

1
Sergio 21 listopad 2020, 03:25

1 odpowiedź

Najlepsza odpowiedź

Zakładając, że nie więcej niż jeden klawiszowy ciąg na rekord można użyć patindeks () w koncercie z stuff()

Przykład

Declare @YourTable Table ([Error Description] varchar(150))
Insert Into @YourTable Values 
 ('ProcessError : Lens 000300084502 is defect/scrap lens!')
,('ProcessError : 20007')
,('ProcessError : Lens 046000085174 is defect/scrap lens!')
,('ProcessError : Lens 011900085176 is defect/scrap lens!')
,('ProcessError : Lens 001200085188 is defect/scrap lens!')
,('ProcessError : 20006')
,('ProcessError : Lens 000300085787 is defect/scrap lens!')
 
Select *
      ,NewVal = IsNull(stuff([Error Description]
                       ,patindex('%Lens [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]%', [Error Description])
                       ,17
                       ,'Lens ------------'
                 ),[Error Description])
 from @YourTable

Zwroty

Error Description                                       NewVal
ProcessError : Lens 000300084502 is defect/scrap lens!  ProcessError : Lens ------------ is defect/scrap lens!
ProcessError : 20007                                    ProcessError : 20007
ProcessError : Lens 046000085174 is defect/scrap lens!  ProcessError : Lens ------------ is defect/scrap lens!
ProcessError : Lens 011900085176 is defect/scrap lens!  ProcessError : Lens ------------ is defect/scrap lens!
ProcessError : Lens 001200085188 is defect/scrap lens!  ProcessError : Lens ------------ is defect/scrap lens!
ProcessError : 20006                                    ProcessError : 20006
ProcessError : Lens 000300085787 is defect/scrap lens!  ProcessError : Lens ------------ is defect/scrap lens!
0
John Cappelletti 21 listopad 2020, 00:35