Cómo actualizar una columna con otra de la misma tabla?

13/02/2007 - 15:14 por path | Informe spam
Hola a todos
Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
ciudad y la provincia separadas por comas así:
"Quito, PICHINCHA", etc
necesito separar "Quito" en una columna temporal y este el es código pero me
da problemas...
update Table_ciudad

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))

from benefaccount

where ciudad LIKE '% , %')

El mensaje de error es:

Msg 512, Level 16, State 1, Line 2

Subquery returned more than 1 value. This is not permitted when the subquery
follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

The statement has been terminated.

Cómo resolverlo?

Gracias

Preguntas similare

Leer las respuestas

#1 Jose Mariano Alvarez
13/02/2007 - 15:47 | Informe spam
Debes correlacionar las consultas o usar insert.
.




Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)




"path" wrote in message
news:%
Hola a todos
Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
ciudad y la provincia separadas por comas así:
"Quito, PICHINCHA", etc
necesito separar "Quito" en una columna temporal y este el es código pero
me da problemas...
update Table_ciudad

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))

from benefaccount

where ciudad LIKE '% , %')

El mensaje de error es:

Msg 512, Level 16, State 1, Line 2

Subquery returned more than 1 value. This is not permitted when the
subquery follows =, !=, <, <= , >, >= or when the subquery is used as an
expression.

The statement has been terminated.

Cómo resolverlo?

Gracias


Respuesta Responder a este mensaje
#2 Alejandro Mesa
13/02/2007 - 15:55 | Informe spam
path,

Estas tratando de asignar a una variable, el conjunto de filas devueltas por
una sentencia "select". Fijate en el resultado de ejecutar:

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where ciudad LIKE '% , %')

Cuantas filas devuelve?, ese es el problema que tienes.

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where ciudad LIKE '% , %'

)

Trata de filtrar el resultado para que solo traiga una fila.

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where
ciudad LIKE '%OTAVALO%'
and ciudad LIKE '%,%'

)
go


AMB

"path" wrote:

Hola a todos
Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
ciudad y la provincia separadas por comas así:
"Quito, PICHINCHA", etc
necesito separar "Quito" en una columna temporal y este el es código pero me
da problemas...
update Table_ciudad

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))

from benefaccount

where ciudad LIKE '% , %')

El mensaje de error es:

Msg 512, Level 16, State 1, Line 2

Subquery returned more than 1 value. This is not permitted when the subquery
follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

The statement has been terminated.

Cómo resolverlo?

Gracias



Respuesta Responder a este mensaje
#3 path
13/02/2007 - 16:13 | Informe spam
No puedo, tengo cientos de registros...

"Alejandro Mesa" wrote in message
news:
path,

Estas tratando de asignar a una variable, el conjunto de filas devueltas
por
una sentencia "select". Fijate en el resultado de ejecutar:

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where ciudad LIKE '% , %')

Cuantas filas devuelve?, ese es el problema que tienes.

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where ciudad LIKE '% , %'

)

Trata de filtrar el resultado para que solo traiga una fila.

Select substring(ciudad,1,charindex(' , ',Ciudad))
from benefaccount
where
ciudad LIKE '%OTAVALO%'
and ciudad LIKE '%,%'

)
go


AMB

"path" wrote:

Hola a todos
Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
ciudad y la provincia separadas por comas así:
"Quito, PICHINCHA", etc
necesito separar "Quito" en una columna temporal y este el es código pero
me
da problemas...
update Table_ciudad

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))

from benefaccount

where ciudad LIKE '% , %')

El mensaje de error es:

Msg 512, Level 16, State 1, Line 2

Subquery returned more than 1 value. This is not permitted when the
subquery
follows =, !=, <, <= , >, >= or when the subquery is used as an
expression.

The statement has been terminated.

Cómo resolverlo?

Gracias



Respuesta Responder a este mensaje
#4 path
13/02/2007 - 16:13 | Informe spam
Cómo se "correlaciona"?
Gracias

"Jose Mariano Alvarez"
wrote in message
news:
Debes correlacionar las consultas o usar insert.
.




Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)




"path" wrote in message
news:%
Hola a todos
Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
ciudad y la provincia separadas por comas así:
"Quito, PICHINCHA", etc
necesito separar "Quito" en una columna temporal y este el es código pero
me da problemas...
update Table_ciudad

set city_temp=(

Select substring(ciudad,1,charindex(' , ',Ciudad))

from benefaccount

where ciudad LIKE '% , %')

El mensaje de error es:

Msg 512, Level 16, State 1, Line 2

Subquery returned more than 1 value. This is not permitted when the
subquery follows =, !=, <, <= , >, >= or when the subquery is used as an
expression.

The statement has been terminated.

Cómo resolverlo?

Gracias






Respuesta Responder a este mensaje
#5 Alejandro Mesa
13/02/2007 - 16:40 | Informe spam
path,

update tu_tabla
set ciudad = substring(ciudad,1,charindex(' , ', ciudad))
where ciudad LIKE '% , %')

Con esta sentencia perderas la informacion sobre la provincia.


AMB


"path" wrote:

No puedo, tengo cientos de registros...

"Alejandro Mesa" wrote in message
news:
> path,
>
> Estas tratando de asignar a una variable, el conjunto de filas devueltas
> por
> una sentencia "select". Fijate en el resultado de ejecutar:
>
> Select substring(ciudad,1,charindex(' , ',Ciudad))
> from benefaccount
> where ciudad LIKE '% , %')
>
> Cuantas filas devuelve?, ese es el problema que tienes.
>
> set city_temp=(
>
> Select substring(ciudad,1,charindex(' , ',Ciudad))
> from benefaccount
> where ciudad LIKE '% , %'
>
> )
>
> Trata de filtrar el resultado para que solo traiga una fila.
>
> Select substring(ciudad,1,charindex(' , ',Ciudad))
> from benefaccount
> where
> ciudad LIKE '%OTAVALO%'
> and ciudad LIKE '%,%'
>
> )
> go
>
>
> AMB
>
> "path" wrote:
>
>> Hola a todos
>> Tengo una tabla con una columna llamada ciudad, pero esta clumna tiene la
>> ciudad y la provincia separadas por comas así:
>> "Quito, PICHINCHA", etc
>> necesito separar "Quito" en una columna temporal y este el es código pero
>> me
>> da problemas...
>> update Table_ciudad
>>
>> set city_temp=(
>>
>> Select substring(ciudad,1,charindex(' , ',Ciudad))
>>
>> from benefaccount
>>
>> where ciudad LIKE '% , %')
>>
>> El mensaje de error es:
>>
>> Msg 512, Level 16, State 1, Line 2
>>
>> Subquery returned more than 1 value. This is not permitted when the
>> subquery
>> follows =, !=, <, <= , >, >= or when the subquery is used as an
>> expression.
>>
>> The statement has been terminated.
>>
>> Cómo resolverlo?
>>
>> Gracias
>>
>>
>>



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida