Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Hacer campo igual a ID en una consulta

Estas en el tema de Hacer campo igual a ID en una consulta en el foro de Mysql en Foros del Web. Hola, Tengo una tabla que un id auto-incremental y quiero que otro de sus campos sea igual al id. La idea es hacer una consulta ...
  #1 (permalink)  
Antiguo 08/11/2012, 11:07
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 16 años, 4 meses
Puntos: 0
Hacer campo igual a ID en una consulta

Hola,

Tengo una tabla que un id auto-incremental y quiero que otro de sus campos sea igual al id.

La idea es hacer una consulta del estilo. Quiero que campo 3 sea igual al ID):

INSERT INTO tabla (campo1, campo2, campo3) VALUES ('bla', 3, ¿?);

¿Que debo poner en lugar de ¿? para que el valor sea igual al del campo ID?

Por supuesto, podría recuparar el ID y hacer otra consulta para UPDATE'ar el campo3, pero esto me parece suboptimo.

GRIACIAS
  #2 (permalink)  
Antiguo 08/11/2012, 11:09
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Hacer campo igual a ID en una consulta

Primero, explicanos para qué quieres hacer que en una tabla se duplique un campo que es PK.
¿En qué contexto sucede eso?
Si lo aclaras, puede que podamos ver una mejor alternativa a la de generar información redundante...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 08/11/2012, 11:14
 
Fecha de Ingreso: abril-2009
Ubicación: en un lugar de la mancha
Mensajes: 236
Antigüedad: 15 años, 7 meses
Puntos: 38
Respuesta: Hacer campo igual a ID en una consulta

Si es verdad ke recargaas tu tabla con datos repetidos y generas mas pasos por gusto, no es mejor ke cuando kieras el campo3 pidas el ID si al final siempre sera el mismo dato.
  #4 (permalink)  
Antiguo 08/11/2012, 11:23
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hacer campo igual a ID en una consulta

Sinceramente, estyo trabajando con una base da datos ya creada. No soy yo quien la ha diseñado, ni puedo cambiarlo.

Creo que el objetivo de esto es que inicialmente tenga el mismo valor que ID, pero que luego campo3 se pueda cambiar si es necesario.
  #5 (permalink)  
Antiguo 08/11/2012, 12:03
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Hacer campo igual a ID en una consulta

Si el ID es autoincremental, es algo medio complicado. Puede que funcione con un TRIGGER AFTER INSERT, pero no te lo garantizo.
Sería usar dentro del TRIGGER la función LAST_INSERT_ID() asignando su valor al campo correspondiente.
Personalmente nunca lo intenté porque carece de utilidad para una base correctamente diseñada. Sólo puede tener sentido con algún diseño mal armado, y con "parches" peores aún.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: igual, tabla, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:12.