Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Contar y sumar elementos

Estas en el tema de Contar y sumar elementos en el foro de Mysql en Foros del Web. Hola a todos, Tengo dos tablas, una con categorías donde cada fila tiene una id y un parent que puede ser cualquier otra fila de ...
  #1 (permalink)  
Antiguo 17/09/2008, 05:21
 
Fecha de Ingreso: septiembre-2008
Mensajes: 16
Antigüedad: 15 años, 7 meses
Puntos: 0
Contar y sumar elementos

Hola a todos,

Tengo dos tablas,

una con categorías donde cada fila tiene una id y un parent que puede ser cualquier otra fila de la tabla. Formando una estructura de árbol.

Por otro lado una tabla con los elementos donde cada elemento pertenece a una categoría anterior.

He logrado conseguir la consulta que cuenta los elementos conseguidos en cada categoría, pero también ncesitaría la consulta que sumara tambien los elementos de las categorias "hijo".

Código:
categorias (id, padre, nombre...)
elementos (id, categoria, nombre...)
Código:
SELECT a.nombre, COUNT(b.id) as elementos
FROM categorias AS a LEFT JOIN elementos as b
GROUP BY a.id
Una ayudita por favor??
  #2 (permalink)  
Antiguo 17/09/2008, 09:39
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: Contar y sumar elementos

Cita:
Iniciado por xavip Ver Mensaje
Hola a todos,

Tengo dos tablas,

una con categorías donde cada fila tiene una id y un parent que puede ser cualquier otra fila de la tabla. Formando una estructura de árbol.

Por otro lado una tabla con los elementos donde cada elemento pertenece a una categoría anterior.

He logrado conseguir la consulta que cuenta los elementos conseguidos en cada categoría, pero también ncesitaría la consulta que sumara tambien los elementos de las categorias "hijo".

Código:
categorias (id, padre, nombre...)
elementos (id, categoria, nombre...)
Código:
SELECT a.nombre, COUNT(b.id) as elementos
FROM categorias AS a LEFT JOIN elementos as b
GROUP BY a.id
Una ayudita por favor??
Usa la sentencia Select Sum(nombrecampo)
ejemplo:

SELECT *, SUM(campo_a_sumar) AS nombre_de_la_suma FROM tabla_que_contiene_el_campo WHERE condicion_opcional
  #3 (permalink)  
Antiguo 17/09/2008, 09:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 16
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Contar y sumar elementos

Me refería a hacer algo así con la consulta anterior, pero desde Mysql, sin utilizar objetos ni arrays de php , directamente obtener el objeto desde la consulta MYSQL

Código PHP:
function SumaHijos ($padre$hijos) {

    foreach ( 
$hijos as $hijo){

        
SumaHijos ($hijo$hijos);
        
        if (
$hijo->parent == $padre->id){

             
$padre->elementos+= $hijo->elementos;

        }
        
    }

    return 
$padre;    


No sé si a lo mejor opinan que es mejor que el trabajo "sucio" lo haga php?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:53.