Tengo dos tablas en una base de datos. Una se llama "ventas" y otra "ventas_meta". Ambas se relacionan mediante la columna "id". Los contenidos de "ventas" son algo así:
Código :
+----+----------------------------+------------+ | id | producto | cantidad | +----+----------------------------+------------+ | 1 | Trampa para correcaminos | 1200.00 | +----+----------------------------+------------+ | 2 | Dinamita contra conejos | 3600.00 | +----+----------------------------+------------+ | 3 | Basura alimenticia | 0.50 | +----+----------------------------+------------+ | 4 | Caja de LOL | 150.00 | +----+----------------------------+------------+ | 5 | Caja de WUT | 1000.000 | +----+----------------------------+------------+
Los contenidos de "ventas_meta", serían entonces así:
Código :
+----+-------------+ | id | marca | +----+-------------+ | 1 | ACME | +----+-------------+ | 2 | ACME | +----+-------------+ | 3 | McDonald's | +----+-------------+ | 4 | Chan | +----+-------------+ | 5 | Chan | +----+-------------+
Ahora, lo que quiero obtener, es la cantidad ganada por marca. Esta es mi consulta SQL:
Código :
SELECT SUM(ventas.cantidad) AS total, ventas_meta.marca AS marca FROM ventas, ventas_meta GROUP BY marca;
Entonces, MySQL regresa lo siguiente:
Código :
+-----------+---------------+ | total | marca | +-----------+---------------+ | 4800.00 | ACME | +-----------+---------------+ | 0.50 | McDonald's | +-----------+---------------+ | 1150.00 | Chan | +-----------+---------------+
Eso está perfecto, por ahora. Ahora, quiero que convierta los datos de "total" en porcentajes, basados en el total máximo. Esto quiere decir, que "ACME" tendría un porcentaje de 100%, y "McDonald's" y "Chan" tendrían un porcentaje basado en el de "ACME". Hipotéticamente, este es el resultado:
Código :
+-----------+---------------+----------------+ | total | marca | porcentaje | +-----------+---------------+----------------+ | 4800.00 | ACME | 100 | +-----------+---------------+----------------+ | 0.50 | McDonald's | 0.010 | +-----------+---------------+----------------+ | 1150.00 | Chan | 23.9 | +-----------+---------------+----------------+
Aquí es donde mis habilidades me traicionan. Necesito crear una consulta para obtener el último resultado. Esto se podría lograr con bucles en PHP, pero preferiría usar una simple consulta en SQL.
O no sé cómo usar Google, o los términos que he elegido son incorrectos.
La ayuda se aprecia
