Разное

Удалить символы в строке sql: Как удалить все неалфавитные символы из строки в SQL Server?

Удалить последний символ в строке в T-SQL?

Вопрос:

Как удалить последний символ в строке в T-SQL?

Например:

'TEST STRING'

:

'TEST STRIN'

Ответ №1

например.

DECLARE @String VARCHAR(100)
SET @String = 'TEST STRING'

-- Chop off the end character
SET @String =
CASE @String WHEN null THEN null
ELSE (
CASE LEN(@String) WHEN 0 THEN @String
ELSE LEFT(@String, LEN(@String) - 1)
END
) END


SELECT @String

Ответ №2

Если по какой-то причине ваша логика столбца сложна (случай, когда… then… else… end), то приведенные выше решения заставляют вас повторять одну и ту же логику в функции len(). Дублирование одной и той же логики становится беспорядком. Если это так, то это решение стоит отметить. Этот пример избавляется от последней нежелательной запятой. Наконец, я нашел использование функции REVERSE.

select reverse(stuff(reverse('a,b,c,d,'), 1, 1, ''))

Ответ №3

Попробуйте следующее:

select substring('test string', 1, (len('test string') - 1))

Ответ №4

Если ваша строка пуста,

DECLARE @String VARCHAR(100)
SET @String = ''
SELECT LEFT(@String, LEN(@String) - 1)

то этот код вызовет сообщение об ошибке «Неверный параметр длины передан функции подстроки».

Вы можете справиться с этим так:

SELECT LEFT(@String, NULLIF(LEN(@String)-1,-1))

Он всегда будет возвращать результат и NULL в случае пустой строки.

Ответ №5

Если ваш coloumn равен text, а не varchar, вы можете использовать это:

SELECT SUBSTRING(@String, 1, NULLIF(DATALENGTH(@String)-1,-1))

Ответ №6

select left('TEST STRING', len('TEST STRING')-1)

Ответ №7

Если вы хотите сделать это за два шага, а не три из REVERSE-STUFF-REVERSE, вы можете иметь разделитель списков в одном или двух пробелах. Затем используйте RTRIM для обрезки конечных пробелов и REPLACE, чтобы заменить двойные пробелы на «,»

select REPLACE(RTRIM('a  b  c  d  '),'  ', ', ')

Однако, это не очень хорошая идея, если ваша исходная строка может содержать внутренние пробелы.

Не уверен в производительности. Каждый REVERSE создает новую копию строки, но STUFF является третьим быстрее, чем REPLACE.

также см. this

Ответ №8

@result = substring(@result, 1, (LEN(@result)-1))

Ответ №9

Я могу предложить это взломать;).

select
left(txt, abs(len(txt + ',') - 2))
from
t;

SQL Server Fiddle Demo

Ответ №10

вы можете создать функцию

CREATE FUNCTION [dbo].[TRUNCRIGHT] (@string NVARCHAR(max), @len int = 1)
RETURNS NVARCHAR(max)
AS
BEGIN
IF LEN(@string)<@len
RETURN ''
RETURN LEFT(@string, LEN(@string) - @len)
END

Ответ №11

Попробуйте это

DECLARE @String VARCHAR(100)
SET @String = 'TEST STRING'
SELECT LEFT(@String, LEN(@String) - 1) AS MyTrimmedColumn

Ответ №12

Получить последний персонаж

Right(@string, len(@String) - (len(@String) - 1))

Ответ №13

Мой ответ подобен принятому ответу, но он также проверяет строку Null и Empty.

DECLARE @String VARCHAR(100)

SET @String = 'asdfsdf1'

-- If string is null return null, else if string is empty return as it is, else chop off the end character
SET @String = Case @String when null then null else (case LEN(@String) when 0 then @String else LEFT(@String, LEN(@String) - 1) end ) end

SELECT @String

Ответ №14

Я люблю @bill-hoenig ответ; однако, я использовал подзапрос, и я попался, потому что функция REVERSE нуждалась в двух наборах круглых скобок. Принял меня немного, чтобы понять, что один из них!

SELECT
-- Return comma delimited list of all payment reasons for this Visit
REVERSE(STUFF(REVERSE((
SELECT DISTINCT
CAST(CONVERT(varchar, r1.CodeID) + ' - ' + c.Name + ', ' AS VARCHAR(MAX))
FROM VisitReason r1
LEFT JOIN ReasonCode c        ON c.ID = r1.ReasonCodeID
WHERE p.ID = r1.PaymentID
FOR XML PATH('')
)), 1, 2, ''))                        ReasonCode
FROM Payments p

Ответ №15

Чтобы обновить запись, обрезая последние N символов определенного столбца:

UPDATE tablename SET columnName = LEFT(columnName , LEN(columnName )-N) where clause

Ответ №16

Попробуйте:

  DECLARE @String NVARCHAR(100)
SET @String = '12354851'
SELECT LEFT(@String, NULLIF(LEN(@String)-1,-1))

Ответ №17

declare @string varchar(20)= 'TEST STRING'
Select left(@string, len(@string)-1) as Tada

выход:

Tada
--------------------
TEST STRIN

Ответ №18

Попробуйте это,

DECLARE @name NVARCHAR(MAX) SET @name='xxxxTHAMIZHMANI****'SELECT Substring(@name, 5, (len(@name)-8)) as UserNames

И результат будет таким, как THAMIZHMANI

Ответ №19

Исходный текст /var может быть нулевым или пустым:

ВЫБРАТЬ ОБРАТНУЮ (ПОДПИСЬ (ОБРАТНАЯ (@a), 2, 9999))

Ответ №20

declare @x varchar(20),@y varchar(20)
select @x='sam'
select
case when @x is null then @y
when @y is null then @x
else @x+','+@y
end


go

declare @x varchar(20),@y varchar(20)
select @x='sam'
--,@y='john'
DECLARE @listStr VARCHAR(MAX)

SELECT @listStr = COALESCE(@x + ', ' ,'') +coalesce(@y+',','')
SELECT left(@listStr,len(@listStr)-1)

TRIM ФУНКЦИЯ — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

Узнайте, как использовать Oracle / PLSQL функцию TRIM с синтаксисом и примерами.

Описание

Функция Oracle / PLSQL TRIM удаляет все указанные символы с начала или окончания строки.

Синтаксис

Синтаксис функции Oracle / PLSQL TRIM:

TRIM( [ [ LEADING | TRAILING | BOTH ] trim_character FROM ] string1 )

Параметры или аргументы

LEADING — удалит trim_character с начала string1.

TRAILING — удалит trim_character с конца string1.

BOTH — удалит trim_character с начала и с конца string1.

trim_character — это символ, который будет удален из string1. Если этот параметр не указан, функция TRIM удалит пробелы из string1.

string1 — строка для удаления.

Примечание

  • Функция TRIM возвращает string значение.
  • Если вы не выберите значение для первого параметра (LEADING, TRAILING, BOTH), функция TRIM удалит trim_character с начала и с конца string1.
  • См. также функции LTRIM и RTRIM.

Применение

Функцию TRIM можно использовать в следующих версиях Oracle / PLSQL:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Пример

Рассмотрим несколько примеров функции TRIM и изучим, как использовать функцию TRIM в Oracle / PLSQL.

SQL> SELECT TRIM(‘ Adam ‘) FROM DUAL;

—Результат: Adam

SQL> SELECT TRIM(‘ ‘ FROM ‘ Adam ‘) FROM DUAL;

—Результат: Adam

SQL> SELECT TRIM(LEADING ‘0’ FROM ‘000123’) FROM DUAL;

—Результат: 123

SQL> SELECT TRIM(TRAILING ‘1’ FROM ‘Adam’) FROM DUAL;

—Результат: Adam

SQL> SELECT TRIM(BOTH ‘1’ FROM ‘123Adam111’) FROM DUAL;

—Результат: 23Adam

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

SQL> SELECT TRIM(‘   Adam   ‘) FROM DUAL;

 

—Результат:   Adam

 

SQL> SELECT TRIM(‘ ‘  FROM  ‘   Adam   ‘) FROM DUAL;

 

—Результат:   Adam

 

SQL> SELECT TRIM(LEADING ‘0’ FROM ‘000123’) FROM DUAL;

 

—Результат:   123

 

SQL> SELECT TRIM(TRAILING ‘1’ FROM ‘Adam’) FROM DUAL;

 

—Результат:   Adam

 

SQL> SELECT TRIM(BOTH ‘1’ FROM ‘123Adam111’) FROM DUAL;

 

—Результат:   23Adam

SUBSTR ФУНКЦИЯ — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

В этом учебном пособии вы узнаете, как использовать Oracle/PLSQL функцию SUBSTR с синтаксисом и примерами.

Описание

Функция Oracle/PLSQL SUBSTR позволяет извлекать подстроку из строки.

Синтаксис

Синтаксис функции Oracle/PLSQL SUBSTR:

SUBSTR( string, start_position, [ length ] )

Параметры или аргументы

string исходная строка.

start_position позиция для начала извлечения подстроки. Первая позиция в
строке всегда равна 1.

length не является обязательным. Определяет количество символов для извлечения. Если этот параметр не указан, функция SUBSTR вернет всю строку.

Примечание

  • Если start_position равно 0, то функция SUBSTR примет параметр start_position как 1 (то есть: первая позиция в строке).
  • Если start_position является положительным числом, то функция SUBSTR начинает считать с начала строки.
  • Если start_position является отрицательным числом, то функция SUBSTR начинается с конца строки и считает в обратном направлении.
  • Если length является отрицательным числом, то функция SUBSTR возвращает значение NULL.

Применение

Функцию SUBSTR можно использовать в следующих версиях Oracle/PLSQL:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Пример

Рассмотрим несколько примеров функции SUBSTR и изучим, как использовать функцию SUBSTR в Oracle/PLSQL.

SELECT SUBSTR(‘This is a test’, 6, 2) FROM DUAL;

—Результат: is

SELECT SUBSTR(‘This is a test’, 6) FROM DUAL;

—Результат: is a test

SELECT SUBSTR(‘КакЧертИзТабакерки’, 1, 3) FROM DUAL;

—Результат: Как

SELECT SUBSTR(‘КакЧертИзТабакерки’, -15, 4) FROM DUAL;

—Результат: Черт

SELECT SUBSTR(‘КакЧертИзТабакерки’, -11, 2) FROM DUAL;

—Результат: Из

SELECT SUBSTR(‘КакЧертИзТабакерки’, -9, 9) FROM DUAL;

—Результат: Табакерки

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

SELECT SUBSTR(‘This is a test’, 6, 2) FROM DUAL;

 

—Результат:      is

 

SELECT SUBSTR(‘This is a test’, 6) FROM DUAL;

 

—Результат:      is a test

 

SELECT SUBSTR(‘КакЧертИзТабакерки’, 1, 3) FROM DUAL;

 

—Результат:      Как

 

SELECT SUBSTR(‘КакЧертИзТабакерки’, -15, 4) FROM DUAL;

 

—Результат:      Черт

 

SELECT SUBSTR(‘КакЧертИзТабакерки’, -11, 2) FROM DUAL;

 

—Результат:      Из

 

SELECT SUBSTR(‘КакЧертИзТабакерки’, -9, 9) FROM DUAL;

 

—Результат:      Табакерки

Символьные / строчные функции SQL Server — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

Функция & Описание
ASCII
В SQL Server (Transact-SQL) функция ASCII возвращает числовой код, который представляет указанный символ.
CHAR
В SQL Server (Transact-SQL) функция CHAR является противоположной функции ASCII. Возвращает символ, основанный на числовом коде.
CHARINDEX
В SQL Server (Transact-SQL) функция CHARINDEX возвращает местоположение подстроки в строке. Поиск не чувствителен к регистру.
CONCAT
В SQL Server (Transact-SQL) функция CONCAT позволяет соединять строки.
конкатенация с символом +
В SQL Server (Transact-SQL) конкатенация с символом + позволяет объединить две или более строки вместе.
DATALENGTH
В SQL Server (Transact-SQL) функция DATALENGTH возвращает длину выражения в байтах.
LEFT
В SQL Server (Transact-SQL) функция LEFT извлекает подстроку из строки, начиная с самого левого символа.
LEN
В SQL Server (Transact-SQL) функция LEN возвращает длину указанной строки. Важно отметить, что функция LEN не включает символы пробела в конце строки.
LOWER
В SQL Server (Transact-SQL) функция LOWER преобразует все буквы в указанной строке в нижний регистр. Если в строке есть символы, которые не являются буквами, они не зависят от этой функции.
LTRIM
В SQL Server (Transact-SQL) функция LTRIM удаляет все пробелы из левой части строки.
NCHAR
В SQL Server (Transact-SQL) функция NCHAR возвращает символ Unicode на основе number_code в стандарте Unicode.
PATINDEX
В SQL Server (Transact-SQL) функция PATINDEX возвращают местоположение шаблона в строке. Поиск не чувствителен к регистру.
REPLACE
В SQL Server (Transact-SQL) функция REPLACE заменяет последовательность символов в строке другим набором символов, и не чувствительна к регистру.
RIGHT
В SQL Server (Transact-SQL) функция RIGHT извлекает подстроку из строки, начиная с самого правого символа.
RTRIM
В SQL Server (Transact-SQL) функция RTRIM удаляет все пробелы из правой части строки.
SPACE
В SQL Server (Transact-SQL) функция SPACE возвращает строку с заданным количеством пробелов.
STR
В SQL Server (Transact-SQL) функция STR возвращает строковое представление числа.
STUFF
В SQL Server (Transact-SQL) функция STUFF удаляет последовательность символов из исходной строки и затем вставляет другую последовательность символов в исходную строку, начиная с указанной позиции.
SUBSTRING
В SQL Server (Transact-SQL) функция SUBSTRING позволяют извлекать подстроку из строки.
UPPER
В SQL Server (Transact-SQL) функция UPPER преобразует все буквы указанной строки в верхний регистр. Если в строке есть символы, которые не являются буквами, они не зависят от этой функции.

REPLACE ФУНКЦИЯ — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

В этом учебном пособии вы узнаете, как использовать Oracle/PLSQL функцию REPLACE с синтаксисом и примерами.

Описание

Функция Oracle/PLSQL REPLACE заменяет последовательность символов в строке другим набором символов.

Синтаксис

Синтаксис функции Oracle/PLSQL REPLACE:

REPLACE( string1, string_to_replace, [ replacement_string ] )

Параметры или аргументы

string1 строка для замены последовательности символов другим набором символов.

string_to_replace строка, которая будет искаться в string1.

replacement_string не является обязательным. Все вхождения string_to_replace будут заменены string_to_replace в string1. Если параметр string_to_replace опущен, то функция REPLACE просто удалит все вхождения string_to_replace, и вернет получившуюся строку.

Примечание

  • Функция REPLACE возвращает string значение.

Применение

Функцию REPLACE можно использовать в следующих версиях Oracle/PLSQL:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Пример

Рассмотрим несколько примеров функции REPLACE и изучим, как использовать функцию REPLACE в Oracle/PLSQL.

SQL> SELECT REPLACE(‘123123abcd’, ‘123’) FROM DUAL;

—Результат: abcd

SQL> SELECT REPLACE(‘123abcd123’, ‘123’) FROM DUAL;

—Результат: abcd

SQL> SELECT REPLACE(‘222abcd’, ‘2’, ‘3’) FROM DUAL;

—Результат: 333abcd

SQL> SELECT REPLACE(‘0000123’, ‘0’) FROM DUAL;

—Результат: 123

SQL> SELECT REPLACE(‘0000123’, ‘0’, ‘ ‘) FROM DUAL;

—Результат: 123

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

SQL> SELECT REPLACE(‘123123abcd’, ‘123’) FROM DUAL;

 

—Результат:   abcd

 

SQL> SELECT REPLACE(‘123abcd123’, ‘123’) FROM DUAL;

 

—Результат:   abcd

 

SQL> SELECT REPLACE(‘222abcd’, ‘2’, ‘3’) FROM DUAL;

 

—Результат:   333abcd

 

SQL> SELECT REPLACE(‘0000123’, ‘0’) FROM DUAL;

 

—Результат:   123

 

SQL> SELECT REPLACE(‘0000123’, ‘0’, ‘ ‘) FROM DUAL;

 

—Результат:   123

Функция SQL для удаления символов из строки

Один из наиболее частых вопросов на форумах — это функция SQL для удаления символов из строки. Функция для того же приведена ниже.

 - Метод 1: цикл
IF (Object_id ('dbo.fn_removecharactersfromstring')) не равно нулю
функция удаления dbo.fn_removecharactersfromstring
ИДТИ
СОЗДАТЬ ФУНКЦИЮ fn_removecharactersfromstring
(
- Добавьте сюда параметры функции
@string nvarchar (макс.)

)
ВОЗВРАТ nvarchar (макс.)
КАК
НАЧАТЬ
- цикл до замены всех символов
WHILE PATINDEX ('% [^ 0-9]%', @ string) <> 0
НАЧАТЬ
    - удалить символы с пустым пространством
    НАБОР @string = STUFF (@ строка, PATINDEX ('% [^ 0-9]%', @ строка), 1, '')
КОНЕЦ

ВОЗВРАТ @string
КОНЕЦ
ИДТИ

ВЫБЕРИТЕ dbo.fn_removecharactersfromstring ('0123-abc-456-def-789') 

Вышеупомянутая функция использует while для перебора строки до тех пор, пока все символы не будут заменены / удалены пустым пространством. Осталась остальная часть строки, то есть числа.

 - Метод 2: На основе набора
IF (Object_id ('dbo.fn_removecharactersfromstring')) не равно нулю
функция удаления dbo.fn_removecharactersfromstring
ИДТИ
СОЗДАТЬ ФУНКЦИЮ fn_removecharactersfromstring
(
- Добавьте сюда параметры функции
@string nvarchar (макс.)

)
ВОЗВРАТ nvarchar (макс.)
КАК
НАЧАТЬ

; С T1 (число) КАК (ВЫБРАТЬ 1 СОЕДИНЕНИЕ ВСЕ ВЫБРАТЬ 1),
T2 (число) КАК (ВЫБРАТЬ 1 ИЗ T1 КАК перекрестное соединение T1 как b),
T3 (число) AS (ВЫБЕРИТЕ 1 ИЗ T2 КАК перекрестное соединение T2 как b),
T4 (число) КАК (ВЫБЕРИТЕ 1 ИЗ T3 КАК перекрестное соединение T3 как b),
Nums (number) AS (SELECT ROW_NUMBER () OVER (ORDER BY (SELECT NULL))
из Т4)
ВЫБРАТЬ @ string = STUFF (
(ВЫБРАТЬ '' + ПОДСТРОКА (@ строка, Числ.номер 1)
ОТ Nums
ГДЕ PATINDEX ('% [0-9]%', SUBSTRING (@ String, Nums.number, 1))> 0
ДЛЯ ПУТИ XML ('')), 1,0, '')

Вернуть @string
КОНЕЦ 

В приведенном выше запросе используется таблица подсчета для разделения строки на отдельные строки, проверки и последующего объединения числовых строк в строку.

Поставьте нам лайк на FaceBook | Присоединяйтесь к самой быстрорастущей группе SQL Server на FaceBook

.

Как удалить все перед определенным символом в SQL Server?

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

  6. О компании

.

заменить специальные символы в sql

Здесь замените специальный символ в таблице sql и замените его обычным символом

 

изменить proc dbo.specialcharacterreplacer

@tblname varchar (1000),
@column_name varchar (1000)

как
начать

--declare @obj VARCHAR (MAX),
--set @ obj = 'выбрать * из INFORMATION_SCHEMA.COLUMNS, где TABLE_NAME =' @tblname ''
--exec @obj


объявить @Sql VARCHAR (MAX)
установить @Sql = '
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ó '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ò '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ö '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ð '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ô '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' õ '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ó '' '+', '+' '' o '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ó '' '+', '+' '' o '' '+')

обновить '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' × '' '+', '+' '' x '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' f '' '+', '+' '' f '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ò '' '+', '+' '' O '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ó '' '+', '+' '' O '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ô '' '+', '+' '' O '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Õ '' '+', '+' '' O '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ö '' '+', '+' '' O '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ñ '' '+', '+' '' n '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ñ '' '+', '+' '' N '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' è '' '+', '+' '' e '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' é '' '+', '+' '' e '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ê '' '+', '+' '' e '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ë '' '+', '+' '' e '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' È '' '+', '+' '' E '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' É '' '+', '+' '' E '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ê '' '+', '+' '' E '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ë '' '+', '+' '' E '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' á '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ã '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' â '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' à '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ä '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' å '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ª '' '+', '+' '' a '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' æ '' '+', '+' '' ae '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' À '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Á '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Â '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ã '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Å '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ä '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Æ '' '+', '+' '' A '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' æ '' '+', '+' '' AE '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ù '' '+', '+' '' u '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ú '' '+', '+' '' u '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' û '' '+', '+' '' u '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ü '' '+', '+' '' u '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' µ '' '+', '+' '' u '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ù '' '+', '+' '' U '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ú '' '+', '+' '' U '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Û '' '+', '+' '' U '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ü '' '+', '+' '' U '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ý '' '+', '+' '' Y '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ÿ '' '+', '+' '' Y '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ÿ '' '+', '+' '' y '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ý '' '+', '+' '' y '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' þ '' '+', '+' '' þ '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ç '' '+', '+' '' C '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ç '' '+', '+' '' c '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' œ '' '+', '+' '' ce '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Œ '' '+', '+' '' CE '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ì '' '+', '+' '' I '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Í '' '+', '+' '' I '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Î '' '+', '+' '' I '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ï '' '+', '+' '' I '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ì '' '+', '+' '' i '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' í '' '+', '+' '' i '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' î '' '+', '+' '' i '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ï '' '+', '+' '' i '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Ð '' '+', '+' '' D '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Þ '' '+', '+' '' D '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ß '' '+', '+' '' B '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' Š '' '+', '+' '' S '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' š '' '+', '+' '' s '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' § '' '+', '+' '' S '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ½ '' '+', '+' '' 1/2 '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ¼ '' '+', '+' '' 1/4 '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ¾ '' '+', '+' '' 3/4 '' '+')

UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' © '' '+', '+' '' Copyright '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ® '' '+', '+' '' Зарегистрированный товарный знак '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ‰ '' '+', '+' ''% '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ¿'' '+', '+' ''? '' '+'))
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' º '' '+', '+' '' 0 '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ¹ '' '+', '+' '' 1 '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ² '' '+', '+' '' 2 '' '+')
UPDATE '+ @tblname +' SET '+ @ column_name +' = REPLACE ('+ @ column_name +', '+' '' ³ '' '+', '+' '' 3 '' '+')
 
'- добавьте свой особый персонаж сюда внутри
exec (@sql)
конец

идти
EXEC dbo.specialcharacterreplacer @tblname = 'вставить имя таблицы здесь', @column_name = 'вставить имя столбца здесь' 

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *