SQL - Copiar un valor en el nuevo registro insertado en una misma tabla

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 30 puestos en SQL (en relación al último mes)
Gráfica de SQL

Copiar un valor en el nuevo registro insertado en una misma tabla

Publicado por Idaira (3 intervenciones) el 05/04/2020 09:00:14
Buenos dis, soy novata en sql y por tanto hacer consultas de este tipo me cuestan.¿me podrían ayudar?
Por ejemplo tengo la siguiente tabla:

1
2
3
4
5
id      cantidad
 
12345      15
 
67890      17

¿Cómo puedo hacer que el nuevo id que inserte tenga la misma cantidad que la del id 12345 sin tener que indicar el valor de la cantidad? Quiero hacerlo así porque lo utilizaré para otros registros.

Básicamente es copiar la cantidad del id que yo indique, en el nuevo registro insertado.

Muchas gracias.
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
Imágen de perfil de joel
Val: 73
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Copiar un valor en el nuevo registro insertado en una misma tabla

Publicado por joel (26 intervenciones) el 06/04/2020 08:12:59
Hola Idaira, no te entiendo muy bien, pero hay que ver de que tipo es el ID... si por ejemplo es una clave primaria, no se podrán repetir los valores.

Que propiedades tienes el campo ID?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Sandro
Val: 11
Ha disminuido su posición en 3 puestos en SQL (en relación al último mes)
Gráfica de SQL

Copiar un valor en el nuevo registro insertado en una misma tabla

Publicado por Sandro (2 intervenciones) el 06/04/2020 15:59:23
así de fácil

1
insert into cantidad (id,ctd)values(12345,15);

1
insert into cantidad (ctd) select ctd from cantidad where id=12345;

1
2
3
4
5
6
7
8
MariaDB [Prueba]> desc cantidad;
+-------+---------+------+-----+---------+----------------+
| Field | Type    | Null | Key | Default | Extra          |
+-------+---------+------+-----+---------+----------------+
| id    | int(11) | NO   | PRI | NULL    | auto_increment |
| ctd   | int(11) | NO   |     | NULL    |                |
+-------+---------+------+-----+---------+----------------+

1
2
3
4
5
6
7
MariaDB [Prueba]> select * from cantidad;
+-------+-----+
| id    | ctd |
+-------+-----+
| 12345 |  15 |
| 12346 |  15 |
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 5
Ha aumentado su posición en 30 puestos en SQL (en relación al último mes)
Gráfica de SQL

Copiar un valor en el nuevo registro insertado en una misma tabla

Publicado por Idaira (3 intervenciones) el 06/04/2020 19:03:33
Muchas gracias!!! Lo probaré y les comento algo.
Por cierto he intentado poner una valoración más alta pero desde el móvil solo me deja poner 1 y si intento poner más me dice que ya ha sido valorada.
No sé si es el valor máximo que permite al valorar las respuestas.

Por cierto Sandro,en la primera línea que me has indicado, se podría poner así ¿no? Es que ahora mismo no tengo la Base de datos delante,lo probaré mañana.

1
Insert into cantidad (id,(Select ctd from cantidad where I’d = 12345));

¡¡Saludos!!!!
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
Imágen de perfil de Sandro
Val: 11
Ha disminuido su posición en 3 puestos en SQL (en relación al último mes)
Gráfica de SQL

Copiar un valor en el nuevo registro insertado en una misma tabla

Publicado por Sandro (2 intervenciones) el 07/04/2020 16:13:09
no te los pise exactamente y probados, ya que están los resultados


Se deseas mas columnas, pues agrégalas en los dos lados, en el insert, y en select
saludos
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