<div dir="ltr"><font face="verdana, sans-serif">Hola Leo, cómo estás?</font><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif">Duda: en las proyecciones, inciso e:</font><div><font face="verdana, sans-serif">  precios promedio de los productos</font></div>
<div style><font face="verdana, sans-serif">indicas que hay que proyectar cod, des, prod, promedio</font></div><div style><font face="verdana, sans-serif"><br></font></div><div style><font face="verdana, sans-serif">pero, qué promedio ? esta tabla productos no debería tener un solo precio por producto ?</font></div>
<div style><font face="verdana, sans-serif">o repetimos los datos para agregar más de un precio a cada producto y así poder hacer este ejercicio?</font></div><div style><font face="verdana, sans-serif"><br></font></div><div style>
<font face="verdana, sans-serif"><br></font></div><div style><font face="verdana, sans-serif">Resto:</font></div><div style><font face="verdana, sans-serif"><br></font></div><div style><div><font face="verdana, sans-serif"><b>a:  productos y su cantidad</b>        </font></div>
<div><font face="verdana, sans-serif">     </font></div><div><font face="verdana, sans-serif"><i>variante 1: muestra total de stock por producto, sin discriminar almacen</i></font></div><div><font face="verdana, sans-serif"><br>
</font></div><div><font face="verdana, sans-serif"> SELECT P.codigo, P.descripcion, P.precio, sum(S.cantidad) as Stock</font></div><div><font face="verdana, sans-serif">  FROM (productos as P, stock as S)</font></div><div>
<font face="verdana, sans-serif">  WHERE P.id=S.id_producto</font></div><div><font face="verdana, sans-serif">  GROUP BY S.id_producto</font></div><div><font face="verdana, sans-serif">     </font></div><div><font face="verdana, sans-serif">                   </font></div>
<div><font face="verdana, sans-serif"><i>variante 2: muestra total de stock por producto y por almacen</i></font></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif">  SELECT P.codigo, P.descripcion, P.precio, S.cantidad,A.nombre</font></div>
<div><font face="verdana, sans-serif">    FROM (productos as P)</font></div><div><font face="verdana, sans-serif">    JOIN stock as S on P.id=S.id_producto</font></div><div><font face="verdana, sans-serif">    JOIN almacenes as A on S.id_almacen=A.id</font></div>
<div><font face="verdana, sans-serif">    GROUP BY S.id_almacen,S.id_producto  </font></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><br>
</font></div><div><div><b><font face="verdana, sans-serif">b: productos con stock mayor a 590</font></b></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif">  SELECT P.codigo, P.descripcion, P.precio, SUM( S.cantidad ) as Stock</font></div>
<div><font face="verdana, sans-serif">    FROM (productos AS P, stock AS S)</font></div><div><font face="verdana, sans-serif">    WHERE P.id = S.id_producto</font></div><div><font face="verdana, sans-serif">    GROUP BY S.id_producto, P.descripcion</font></div>
<div><font face="verdana, sans-serif">    HAVING SUM( S.cantidad ) > 590</font></div></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><br>
</font></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><div><b>c:  cantidad de productos por almacen</b></div><div><br></div><div>  SELECT A.nombre as "Almacen", sum(S.cantidad) as "Stock Total"</div>
<div>    FROM (almacenes as A, stock as S)</div><div>    WHERE A.id=S.id_almacen</div><div>    GROUP BY S.id_almacen</div><div>    ORDER BY A.nombre</div></font></div><div><font face="verdana, sans-serif"><br></font></div>
<div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif"><div><b>d: total de productos</b></div><div>    </div><div><i>variante 1: cantidad de articulos con stock mayor a 0 </i></div><div>
<br></div><div>  SELECT count(distinct id_producto) as "Cantidad de articulos con stock"</div><div>    FROM stock</div><div>    WHERE cantidad>0</div><div>                                                  </div>
<div><i>variante 2: cantidad total de articulos en sistema  </i></div><div><br></div><div>  SELECT count(id) as "Cantidad de articulos"</div><div>    FROM productos</div><div><br></div><div><br></div><div><br></div>
<div><br></div><div><div><b>f: total de productos por almacen </b></div><div><br></div><div style><i>si se refiere a total de stock de cada producto por almacen:</i></div><div>  SELECT A.nombre as "Almacen", P.descripcion, sum(S.cantidad) as "Stock"</div>
<div>  FROM (almacenes as A)</div><div>  JOIN stock as S on A.id=S.id_almacen</div><div>  JOIN productos as P on S.id_producto=P.id</div><div>  GROUP BY S.id_almacen,P.codigo </div></div><div style><br></div><div style><i>si se refiere a cantidad de artículos por almacen:</i></div>
<div><div>  SELECT A.nombre as "Almacen", COUNT(S.id_producto) as "Cant.Arts."</div><div>  FROM (almacenes as A)</div><div>  JOIN stock as S on A.id=S.id_almacen</div><div>  GROUP BY S.id_almacen</div>
</div><div style><br></div><div><br></div><div><div><b>g: precios promedios por almacen</b></div><div>  SELECT A.nombre as "Almacen", round(avg(P.precio),2) as "Precio Promedio"</div><div>  FROM (almacenes as A)</div>
<div>  JOIN stock as S on A.id=S.id_almacen</div><div>  JOIN productos as P on P.id=S.id_producto  </div><div>  GROUP BY S.id_almacen</div></div><div><br></div><div style>de vuelta: un solo precio por producto por almacen, es decir, que el promedio es teniendo en cuenta todos los productos del almacen</div>
<div><br></div><div><br></div></font></div><div><font face="verdana, sans-serif"><br></font></div></div></div></div>