Hola wchiquito:
En espera de lo que nos pueda confirmar el autor del post ebolavih, hay un pequeño detalle con la consulta que propone. La consulta obtiene el mínimo precio de todos los vendedores. Por lo que entendí lo que se pide es obtener el mínimo precio para cada vendedor... supongamos que se tienen los siguientes datos en lugar de los propuestos en mi primer post;
Código MySQL:
Ver original+------+--------+------------+------------+-----------+
| ID | PRECIO | VENDEDOR | ARTICULO | OFICINA |
+------+--------+------------+------------+-----------+
| 1 | 10 | vendedor 1 | articulo a | oficina a |
| 2 | 12 | vendedor 1 | articulo a | oficina a |
| 3 | 12 | vendedor 1 | articulo b | oficina b |
| 4 | 13 | vendedor 1 | articulo b | oficina b |
| 5 | 8 | vendedor 2 | articulo a | oficina a |
| 6 | 11 | vendedor 2 | articulo a | oficina a |
| 7 | 20 | vendedor 2 | articulo b | oficina b |
| 8 | 10 | vendedor 2 | articulo b | oficina b |
| 9 | 10 | vendedor 1 | articulo a | oficina a |
+------+--------+------------+------------+-----------+
Al realizar ambas consultas se obtienen estos resultados:
Código MySQL:
Ver original -> WHERE articulo
= 'articulo a' AND oficina
= 'oficina a' -> ON T1.vendedor
= T2.vendedor
AND T1.precio
= T2.min_precio
-> WHERE T1.articulo
= 'articulo a' AND T1.oficina
= 'oficina a'; +------+--------+------------+------------+-----------+
| ID | PRECIO | VENDEDOR | ARTICULO | OFICINA |
+------+--------+------------+------------+-----------+
| 1 | 10 | vendedor 1 | articulo a | oficina a |
| 5 | 8 | vendedor 2 | articulo a | oficina a |
| 9 | 10 | vendedor 1 | articulo a | oficina a |
+------+--------+------------+------------+-----------+
-> t1.id,
-> t1.precio,
-> t1.vendedor,
-> t1.articulo,
-> t1.oficina
-> tabla t1
-> t1.articulo
= 'articulo a' AND -> t1.oficina
= 'oficina a' AND -> tabla
-> articulo
= t1.articulo
AND -> oficina = t1.oficina);
+------+--------+------------+------------+-----------+
| id | precio | vendedor | articulo | oficina |
+------+--------+------------+------------+-----------+
| 5 | 8 | vendedor 2 | articulo a | oficina a |
+------+--------+------------+------------+-----------+
Sólo sería cuestión de considerar también al vendedor en la subconsulta interna:
Código MySQL:
Ver original -> t1.id,
-> t1.precio,
-> t1.vendedor,
-> t1.articulo,
-> t1.oficina
-> tabla t1
-> t1.articulo
= 'articulo a' AND -> t1.oficina
= 'oficina a' AND -> tabla
-> articulo
= t1.articulo
AND -> oficina
= t1.oficina
AND -> vendedor = t1.vendedor);
+------+--------+------------+------------+-----------+
| id | precio | vendedor | articulo | oficina |
+------+--------+------------+------------+-----------+
| 1 | 10 | vendedor 1 | articulo a | oficina a |
| 5 | 8 | vendedor 2 | articulo a | oficina a |
| 9 | 10 | vendedor 1 | articulo a | oficina a |
+------+--------+------------+------------+-----------+
Y vuelvo a insistir, ahora que tiene varias opciones ebolavih debería probarlas todas y decirnos cuál de ellas representó la mejor alternativa, para poder considerarlo en un futuro.
Saludos
Leo.