serpiente22
Usuario Novato
Usuario Novato

Tengo una tabla que son lineas de una cabecera y quiero numerar las lineas ordenadas por fecha y hora con un Update, o sea, meter en el campo linea el numero de linea de ese dia, pero no lo quiero hacer para una sola linea si no para todas las de ese dia en el mismo update.

Se como numerar lineas en una select

SELECT @row := @row + 1 as row, t.*
FROM some_table t, (SELECT @row := 0) r  where campo_fecha=fecha

pero no se como hacer un update de esto

Me interesa hacerlo via SQL por que estoy programando trigger.

Muchas gracias de antemano

Avatar Image
@man / @woman
@man / @woman

Una sentencia de update (con 2 campos a actualizar y un índice) se vé así:

$sql="UPDATE tabla SET campo1='$var1', campo2='$var2' WHERE campo= '$varn'";

reemplaza tabla, campo1, campo2, var1, var2 y varn por lo que corresponda

serpiente22
Usuario Novato
Usuario Novato

Te agradezco tu pronta respuesta, pero no he debido de explicarme, lo vuelvo a contar a ver si asi se entiende

Tengo la tabla caja que tiene distintos campos, entre ellos linea, fecha, hora donde por cada fecha el contador linea se inicializa,

si un dia tiene cinco lineas pues comienza en la 1 termina en la 5. Mi intención es hacer un update por fecha para que renumere todas las lineas de ese dia. Pero quiero hacerlo en un solo update. La sentencia que escribi antes te numera las lineas en una select, pero no se como hacerlo para que haga un update o sea que lo meta en ese campo. Lo hago por codigo (uso delphi), pero quiero hacerlo via sql, para meterlo en un trigger.

serpiente22
Usuario Novato
Usuario Novato

Al final lo he conseguido de la siguiente manera:

He creado una tabla temporal, donde hago un insert to del resultado de la select que citaba, despues borro los registros de la fecha de la tabla caja, y hago un insert to desde la tabla temporal a la tabla caja. Por supuesto antes de hacer el insert to a la tabla temporal hago un borrado de los datos que esta contiene.

Gracias, y si se os ocurre otra manera de hacerlo con menos pasos, mejor.

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
No se han encontrado temas similares