Обновление столбца C значениями столбца A и столбца B - PullRequest
1 голос
/ 26 мая 2009

Мне нужно добиться этого

update [table]
set [column c] = ( select [column a] + ' ' + [column b] from [table] )

но я получаю это сообщение об ошибке

Подзапрос вернул более 1 значения. Это недопустимо, если подзапрос следует =,! =, <, <=,>,> = Или когда подзапрос используется как выражение.

Как мне достичь желаемого эффекта без нежелательных результатов:)

Jim

Ответы [ 3 ]

5 голосов
/ 26 мая 2009

Это просто:

update table
set c = a + ' ' + b

Это обновит все строки в таблице.

2 голосов
/ 26 мая 2009

попробуйте добавить предложение WHERE в подзапрос, чтобы он выделил только одну строку.

1 голос
/ 26 мая 2009

ОБНОВЛЕНИЕ таблицы SET c = a + '' + b; ------- это работает, если a, b, c относятся к типу данных char / var char.

Если они имеют числовой тип данных, это дает ошибку. Также проверьте длину C. Например, если C varchar2 (30), varchar2 (10) и b varchar2 (15) верны, если длина правой части больше, это дает ошибку.

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