I have these two tables:私のデータベースは、私は私の総収益を示してクエリを実行しようとしている大きいですが、クエリはこれらのみ2を含み、それらは主キー「Id_TipoMed」と外部キー「TipoMedicamento_FK」によって関連しているカテゴリごとにグループ化された単一のクエリで複数の集計関数を使用して関連する値を返すようにMySQLに指示するにはどうすればよいですか?
このタイプの医薬品(「Tipo Medicamento」)はカテゴリと呼ばれています。また、カテゴリーごとに1つずつ表示したいと考えています(この場合は、「cantidad」と「precio」)それは、カテゴリごとの合計の占めるパーセンテージを示し、私はこのコードをした後、最大の利益とを:
SELECT
T.Id_TipoMed,
M.Nombre,
MAX(Cantidad*Precio) Ganancia_Medicamento,
SUM(Cantidad*Precio)Ganancia_Neta,
CONCAT(MAX(Cantidad*Precio)*100/SUM(Cantidad*Precio),'%') Porcentaje_Respecto_Tipo
FROM Medicamento M
INNER JOIN TipoMedicamento T ON M.TipoMedicamento_FK=T.Id_TipoMed
GROUP BY TipoMedicamento_FK
HAVING
SUM(Cantidad*Precio) = (
SELECT
SUM(Cantidad*Precio)
FROM Medicamento M2
WHERE M2.TipoMedicamento_FK=T.Id_TipoMed)
AND
MAX(Cantidad*Precio) = (
SELECT
MAX(Cantidad*Precio)
FROM Medicamento M2
WHERE M2.TipoMedicamento_FK=T.Id_TipoMed);
クエリで私の唯一の問題は、それが私の株式会社を示すことです私は間違って何をしているのですか?複数の集約関数を含まない複雑ではないクエリを実行するときに、過去にそのようにサブクエリを実行することによって、最大収益に関連付けられた名前に対応しません。
ありがとうございました!
このような完全な答えをありがとう! ^^ –