MySQL - update con select

 
Vista:
Imágen de perfil de Francisco

update con select

Publicado por Francisco (21 intervenciones) el 11/01/2011 23:50:53
Que tal amigos, recurro a uds por que ya le di muchas vueltas y no me sale esta consulta, estoy tratando de actualizar un campo. "cant_cargadas", y aqui esta la consulta final:

UPDATE planilla,padron_ultimo
SET planilla.cant_cargadas= (SELECT count(*) FROM padron_ultimo,planilla
WHERE planilla.id_planilla=padron_ultimo.iPlanilla
GROUP BY iPlanilla)
WHERE padron_ultimo.iPlanilla=planilla.id_planilla

Alguna idea? desde ya 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
sin imagen de perfil
Val: 953
Oro
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

RE:update con select

Publicado por Leonardo Josué (414 intervenciones) el 12/01/2011 16:59:17
Buenas tardes Francisco:

Mencionas que tu consulta no te sale, pero nunca mencionas qué problema tienes, si la consulta te marca algún error deberías decirnos qué error es, si la consulta no hace lo que quieres deberías comenzar por decirnos qué es lo que quieres hacer.

Según lo que pude adivinar (y digo adivinar porque sinceramente no hay mucha información que sirva) lo que quieres hacer es actualizar tu tabla PLANILLA colocando en el su campo CANT_CARGADAS el resultado de contar cuantos registros existen en tu tabla PADRON_ULTIMO para el idPlanilla. Es decir, si tienes algo como esto

Tabla Planilla
idPlanilla|cant_cargadas
-----------------------------------
1|0
2|0
3|0

Tabla Padron_ultimo
idPadron|iPlanilla
--------------------------------
10|1
20|2
30|1
40|1

Después de la actualización tu tabla planilla debería quedar asi:

idPlanilla|cant_cargadas
-----------------------------------
1|3
2|1
3|0

¿Estoy en lo correcto?

Esto lo puedes lograr así.

UPDATE planilla SET planilla.cant_cargadas =
(select count(*) as total from padron_ultimo where planilla.idPlanilla = padron_ultimo.iPlanilla)

Si no es esto lo que quieres entonces te pediría que nos explicaras un poco mejor lo que necesitas, colocando (como lo hice yo) algunos datos de ejemplo y qué esperas de salida.
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