Ver la Versión Completa : Update campo
amerika111
10-06-2011, 18:21:52
hola que tal, quisiera saber si hay una forma de actualizar un campo que contiene informacion extra:
ejemplo
campo direccion
Direccion
c.carlos cuaron,colonia madero #222
realizar un update y dejar solo la palabra madero
trate de realizarlo de la siguiente manera
update colonias set direccion='madero' where direccion=(select direccion from colonias where direccion like '%madero%')
y arroja este error
multiple rows in singleton select
Chris
10-06-2011, 18:43:11
update colonias set direccion='madero' where direccion=(select direccion from colonias where direccion like '%madero%')
Más o menos llevas una idea... vas por buen camino. Pero a cómo dice el error, el operador = solo puede comparar con un único valor, no con muchos a cómo devolverá el SELECT.
Para hacer lo que deseas puedes probar este código SQL:
update colonias set direccion='madero' where id in (select id from colonias where direccion like '%madero%')
La diferencia es que utilizo el operador IN. Utilizando el campo ID (que supongo tienes en tu tabla). Usando el campo ID o cualquier otro identificador de tipo entero se logra optimizar en gran manera la consulta.
Saludos,
Chris
guillotmarc
10-06-2011, 18:43:21
Hola.
No has escogido el operador adecuado. Tu consulta funcionaría así :
update colonias set direccion='madero' where direccion in (select direccion from colonias where direccion like '%madero%')
Aunque personalmente creo que es mucho más simple y elegante esta otra :
update colonias set direccion = 'madero' where direccion containing 'madero'
Saludos.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.