Ver Mensaje Individual
  #9 (permalink)  
Antiguo 14/02/2013, 17:43
drsheldoncooper
 
Fecha de Ingreso: febrero-2013
Mensajes: 26
Antigüedad: 12 años
Puntos: 0
Respuesta: asignar numero a lista de registros

Cita:
Iniciado por gnzsoloyo Ver Mensaje
1) Crea el campo que necesitas, supongamos "NUM".
2) Crea una tabla temporal, usando la lógica de tu propia consulta, tal que recuperes los verdaderos identificadores, junto con el código fabricado y ficticio:

Código MySQL:
Ver original
  1. CREATE TEMPORARY TABLE tablatemporal
  2. SELECT  (@rnum := @rnum +1) idNum, codigo
  3. FROM tabla, (SELECT @rnum :=0) x
3) Usa la tabla temporal como referencia para haer el UPDATE:
Código MySQL:
Ver original
  1. UPDATE tabla t, tablatemporal t2
  2. SET num = idnum
  3. WHERE T.codigo = t2.codigo;

Nota importante: todas las acciones deben hacerse manualmente en una única sesión de MySQL, o no funcionará la tabla TEMPORARY.

Finalmente:

4) Aclárales a los que te hicieron este pedido que lo que ellos quieren se considera una pésima práctica en el diseño y administración de bases de datos. Y que cualquier uso diferente al indicado de esos códigos inventados puede, eventualmente, generar problemas de consistencia e integridad de datos.
Eso, al menos, puedo asegurártelo.

Me funciono de maravilla ,muchas gracias de la que me salvaste y si pienso lo mismo que tu pero asi lo quieren ni modo ,gracias