Czy istnieje sposób na usunięcie znaków specjalnych (pozostawiając jedynie alfanumeryczne) z ciągu znaków/pola w serwerze SQL bez funkcji pętli/niestandardowej?Usunąć znaki specjalne w języku SQL bez pętli?
Jak dotąd, najlepsze, jakie wymyślić to:
Create Function [dbo].[strip_special](@Temp VarChar(1000))
Returns VarChar(1000)
AS
Begin
While PatIndex('%[^a-z0-9]%', @Temp) > 0
Set @Temp = Stuff(@Temp, PatIndex('%[^a-z0-9]%', @Temp), 1, '')
Return @TEmp
End
Na niektórych serwerach nie mam uprawnień do cread zdefiniowane przez użytkownika funkcje, więc chciałbym, aby móc osiągnąć ten sam wynik bez. Mam również obawy dotyczące wydajności/wydajności pętli (chociaż domyślam się, że nawet wbudowana funkcja/metoda prawdopodobnie używa pętli).
Dzięki
Mam soemtimes widziane osoby sugerują demontażu strun do stołu jak rzeczy i dołączeniem do tabeli znaków Ustalacz . [Oto dyskusja, którą możesz być zainteresowany] (http://ask.sqlservercentral.com/questions/75404/strip-all- but-alpha-chars-out-of-a-string) –