Как мне обрезать эти поля кавычек в SQL Server? - PullRequest
2 голосов
/ 04 июня 2009

У меня есть таблица с 6 миллионами + записей, но первое поле имеет «в начале, а последнее поле имеет» в конце Я думаю, когда делали массовую вставку, они забыли ее удалить. Я хочу запустить запрос на обновление, который удалит "из этих 2 полей Пример данных -

Field 1     
"18157142   
"18157152
"18157159
"18157177
"18157189
"18157191
"18157197
"18157208
"18157223
"18157224

Field 2 (Last field)
243901"
832218"
506356"
78301"
753201 - Automobile Body"
553111 - Automobile Parts & Supplies-Retail"
581203"
792903 - Music"
653118"
541105 - Grocers"

Также нет места в этом поле, которое "появляется где-либо еще, поэтому его просто 1", чтобы удалить из поля.

Есть идеи?

Ответы [ 6 ]

7 голосов
/ 04 июня 2009
Update myTable 
SET 
    Field1 = Replace(Field1, '"', ''), 
    Field2 = Replace(Field2, '"', '')

Это будет работать быстрее, чем другие рекомендации, потому что вам не придется выполнять какие-либо дополнительные вызовы функции длины строки, чтобы определить, как далеко нужно сосчитать. Это просто заменит все вхождения кавычек, что и было изначально запрошено (поскольку кавычки не будут отображаться нигде, где они могут не захотеть быть удалены).

0 голосов
/ 04 июня 2009
UPDATE [table]
SET      [field1] = RIGHT( [field1], LEN([field1]) - 1),
         [field2] = LEFT(  [field2], LEN([field2]) - 1)
0 голосов
/ 04 июня 2009
UPDATE MyTable
SET Field1 = RIGHT(Field1, LEN(Field1) - 1), Field2 = LEFT(Field2, LEN(Field2) - 1)
0 голосов
/ 04 июня 2009
UPDATE TableName
SET Field1 = MID(Field1,2)
    Field2 = MID(Field2,1,LEN(Field2)-1)
0 голосов
/ 04 июня 2009

Если бы у вас было время подождать, я бы просто:

update [tableName] set field1 = right(field1, len(field1) -1)

update [tableName] set field2 = left(field2, len(field2) -1) 
0 голосов
/ 04 июня 2009

Это обновление,

update table
set field1 = right(field1,length(field1)-1),
field2 = left(field1,length(field1)-1)

Проблема в огромной транзакции, которую она сгенерирует ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...