Ver Mensaje Individual
  #33 (permalink)  
Antiguo 27/01/2012, 14:27
neocalichin
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: Consulta MYSQL INNER JOIN

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Exactamente así.
El campo fecha de la tabla madre tiene por objeto establecer el momento de inserción del movimiento de modo de poder lista los movimientos realizados sin tener que acudir a las otras.
Por una cuestión de trazabilidad de los procesos es muy habitual agregar a las tablas que se escriben, columnas que indiquen cuándo se hizo la operación que se registra allí.
Podría agregarsele un ID de una tabla que podamos llamar "MovimientosConcpetos", donde listar cuales son las tablas que contiene movimientos de Caja y de ese modo poder dinamicamente crear las consultas para acotar el tipo de movimiento que se busca.
Eso es extender el sistema, en todo caso quedaría para ti ver lo que conviene, pero con ese esquema tal y como lo empiezas a visualizar, la consulta que te propuse, funcionaría perfectamente, y te devolvería el listado esperado:


Código MySQL:
Ver original
  1.     MC.movimiento_id,
  2.     MC.fecha,
  3.     IFNULL(CE.importe, 0.0) Egreso,
  4.     IFNULL(CC.importe, 0.0) Ingreso
  5.     movimiento_caja MC
  6.     LEFT JOIN CajaEgreso CE ON MC.movimiento_id = CE.movimiento_id
  7.     LEFT JOIN CajaCheque CC ON MC.movimiento_id = CC.movimiento_id
  8.     MC.movimiento_id
entonces eso significa


CHEQUE
FK ID_MOV
FECHA
IMPORTE

que al ID_MOV de la tabla cheque no le pongo auto_increment ni tamcpo primary key ?