crisgil79
22/07/08, 06:31:32
Hola a todos,
Necesitaría unir dos tablas internas en una de manera que en los registros que obtendría repetidos, sumase un campo.
Pongo un ejemplo:
Tengo dos tablas internas:
1) it_prev con los siguientes campos:
| Año | Unidad Prevision | Servicio | Cantidad | Proveedor |
----------------------------------------------------------
| 2007 | 0000000000001 | 300 | 2 | 500 |
| 2007 | 0000000000001 | 301 | 3 | 500 |
| 2007 | 0000000000001 | 300 | 1 | 250 |
En esta tabla para cada proveedor tengo dos servicios diferentes cada uno con su cantidad
2) it_deleg con los siguientes campos:
| Distribuidora | Delegacion | Proveedor | Unidad prevision |
----------------------------------------------------------
| CEG | CC1 | 500 | 0000000000001 |
Para mi ejemplo con un registro tengo suficiente, es el que necesito.
Bien pues necesito unir it_prev y it_deleg en la tabla interna it_pro_del de manera que los registros que estén repetidos en la it_pro_del se sume su campo Cantidad. Así debería quedar la tabla it_pro_del:
| Proveedor | Delegación | Total |
---------------------------------
| 500 | CC1 | 5 |
| 250 | CC1 | 1 |
Si fuese con un select no habria problema, pero claro al ser tablas internas y tenerlo que hacer con un loop pues me supone tener que recorrer la misma tabla dos veces. ¿Sabeis si hay alguna manera de hacerlo más elegante?
Muchas gracias.
Saludos,
Cris.
Necesitaría unir dos tablas internas en una de manera que en los registros que obtendría repetidos, sumase un campo.
Pongo un ejemplo:
Tengo dos tablas internas:
1) it_prev con los siguientes campos:
| Año | Unidad Prevision | Servicio | Cantidad | Proveedor |
----------------------------------------------------------
| 2007 | 0000000000001 | 300 | 2 | 500 |
| 2007 | 0000000000001 | 301 | 3 | 500 |
| 2007 | 0000000000001 | 300 | 1 | 250 |
En esta tabla para cada proveedor tengo dos servicios diferentes cada uno con su cantidad
2) it_deleg con los siguientes campos:
| Distribuidora | Delegacion | Proveedor | Unidad prevision |
----------------------------------------------------------
| CEG | CC1 | 500 | 0000000000001 |
Para mi ejemplo con un registro tengo suficiente, es el que necesito.
Bien pues necesito unir it_prev y it_deleg en la tabla interna it_pro_del de manera que los registros que estén repetidos en la it_pro_del se sume su campo Cantidad. Así debería quedar la tabla it_pro_del:
| Proveedor | Delegación | Total |
---------------------------------
| 500 | CC1 | 5 |
| 250 | CC1 | 1 |
Si fuese con un select no habria problema, pero claro al ser tablas internas y tenerlo que hacer con un loop pues me supone tener que recorrer la misma tabla dos veces. ¿Sabeis si hay alguna manera de hacerlo más elegante?
Muchas gracias.
Saludos,
Cris.