SQL рд╕рд░реНрд╡рд░ рдореЗрдВ рдЕрдХреНрд╖рд░реЛрдВ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рд░рдЦрддреЗ рд╣реБрдП рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ SQL рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕рд╛рдлрд╝ рдХрд░рдирд╛
рдЕрд╡рд▓реЛрдХрди
рд╣рдорд╛рд░рд╛ рдпреВрдЯрд┐рд▓рд┐рдЯреА рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд╛рдл-рд╕реБрдерд░реЗ рдЫреЛрдЯреЗ рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рднрд░рд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЗрдЯрд╛ рдХреЛ рд╣рдорд╛рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбрд╛рд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, '0' рдФрд░ 'Z' рдХреЗ рдмреАрдЪ рдирд╣реАрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдЕрд▓рдЧ рдХрд░рдХреЗ, рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рддрдм рддрдХ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдХреЛрдИ рдЖрдЗрдЯрдо рдЬреЛ рдорд╛рдиреЛрдВ рдХреЗ рдмреАрдЪ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ .
рдореВрд▓ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рдЗрдирдкреБрдЯ рдорд╛рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реВрдк рдХрд░рдирд╛ рд╣реИ рдФрд░ рдкреИрдЯрд░реНрди рдЗрдВрдбреЗрдХреНрд╕ рд░реЗрдВрдЬ рдХреЗ рднреАрддрд░ рдирд╣реАрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рдХреЛ рд╣рдЯрд╛ рджреЗрдирд╛ рд╣реИред
рдпрджрд┐ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ [^0-Z] [^0-9] рдмрди рдЬрд╛рддрд╛ рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдкрд╛рда рдХреЗ рд▓рд┐рдП рдпрд╣ [^ aZ] рд╣реИред
SQL
CREATE Function [dbo].[CleanToText](@Data VARCHAR(100))Returns VARCHAR(100)AS BEGIN DECLARE @Letter INT SET @Letter =PATINDEX('%[^0-Z]%',@Data) BEGIN WHILE @Letter>0 BEGIN SET @Data =STUFF(@Data,@Letter,1,'') SET @Letter =PATINDEX('%[^0-Z]%',@Data) END END RETURN @DataENDGOSELECT dbo.CleanToText('info@claytabase.co.uk')