SQL - Actualizar Campos Tabla

 
Vista:

Actualizar Campos Tabla

Publicado por Frank (1 intervención) el 23/09/2015 19:00:07
Buen día..!

Necesito ayuda con la actualización de los datos de una tabla:

Tengo una tabla llamada Producto con mas de 5000 registros. En el campo Descripción del producto necesito agregar cierta información ademas de la existente, que puedo hacer si en 1000 articulos debo introducir la misma información en el campo Descripción sin alterar/cambiar/eliminar la existente. Por ejemplo:

Tabla: Producto
Descripción: Televisor de 50'' Pantalla LCD

Ahora deseo agregar la MARCA en el campo Descripción cuando un producto pertenece al codigo_proveedor 201:
Tabla: Producto
Descripción: Televisor de 50'' Pantalla LCD Marca Sony

Ahora como puedo aplicar este cambio a 1000 productos en el campo descripción, sin cambiar la información existente. Lo unico que puedo utilizar como referencia es el codigo_proveedor.

Agradezco mucho de vuestra ayuda..!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 806
Bronce
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Actualizar Campos Tabla

Publicado por leonardo_josue (1173 intervenciones) el 23/09/2015 19:34:25
Hola Frank.

Lo que quieres hacer en realidad es algo básico, pero depende de qué DBMS estes utilizando... básicamente lo que tienes que hacer es un UPDATE al campo DESCRIPCION, poniendo la misma descripción CONCATENANDO la cadena que quieres, en MySQL sería algo así.

Supongamos que tienes esta tabla:

1
2
3
4
5
6
7
8
9
10
11
12
mysql> SELECT * FROM producto;
+-------------+------------------+-------------------------------+
| id_producto | codigo_proveedor | descripcion                   |
+-------------+------------------+-------------------------------+
|           1 |              201 | Televisor de 50" Pantalla LCD |
|           2 |              201 | Blue Ray con Home Theather    |
|           3 |              202 | Minicomponente X              |
|           4 |              201 | Minicomponente X              |
|           5 |              202 | Televisor de 50" Pantalla LCD |
|           6 |              202 | Blue Ray con Home Theather    |
+-------------+------------------+-------------------------------+
6 rows in set (0.00 sec)

para actualizar sólo los códigos 201 y agregar la marca, haces algo como esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
mysql> UPDATE producto
    -> SET descripcion = CONCAT(descripcion, ' Marca Sony')
    -> WHERE codigo_proveedor = 201;
Query OK, 3 rows affected (0.07 sec)
Rows matched: 3  Changed: 3  Warnings: 0
 
mysql> SELECT * FROM producto;
+-------------+------------------+------------------------------------------+
| id_producto | codigo_proveedor | descripcion                              |
+-------------+------------------+------------------------------------------+
|           1 |              201 | Televisor de 50" Pantalla LCD Marca Sony |
|           2 |              201 | Blue Ray con Home Theather Marca Sony    |
|           3 |              202 | Minicomponente X                         |
|           4 |              201 | Minicomponente X Marca Sony              |
|           5 |              202 | Televisor de 50" Pantalla LCD            |
|           6 |              202 | Blue Ray con Home Theather               |
+-------------+------------------+------------------------------------------+
6 rows in set (0.00 sec)

Haz la prueba y nos comentas.

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar