Je suis désolé si c'est vraiment basique, mais:Est-ce que les fonctions agrégées MySQL retournent toujours une seule ligne?
Je sens qu'à un certain moment je n'ai pas eu ce problème, et maintenant je le suis, donc soit je faisais quelque chose de totalement différent avant ou ma syntaxe a sauté une étape.
J'ai, par exemple, une requête que j'ai besoin de retourner toutes les lignes avec certaines données avec une autre colonne qui a le total d'une de ces colonnes. Si les choses ont fonctionné comme je les attendais, il ressemblerait à ceci:
SELECT
order_id,
cost,
part_id,
SUM(cost) AS total
FROM orders
WHERE order_date BETWEEN xxx AND yyy
Et je recevrais toutes les lignes avec mes ordres, avec le total clouée à la fin de chacun. Je sais que le total serait le même à chaque fois, mais c'est prévu. En ce moment, pour obtenir ce à travailler, je me sers:
SELECT
order_id,
cost,
part_id,
(SELECT SUM(cost)
FROM orders
WHERE order_date BETWEEN xxx AND yyy) AS total
FROM orders
WHERE order_date BETWEEN xxx AND yyy
en cours d'exécution essentiellement la même requête deux fois, une fois pour le total, une fois pour les autres données. Mais si je voulais, par exemple, le SUM et, je ne sais pas, le coût moyen, je ferais alors la même requête 3 fois, et cela semble vraiment faux, c'est pourquoi je pense que je fais des choses vraiment basiques erreur.
Toute aide est vraiment appréciée.
On dirait que vous obtenez de bonnes réponses, mais la question comme indiqué sous la forme d'une réponse par oui ou par non n'est pas un début très utile, à mon humble avis. – Smandoli
J'ai tendance à écrire des questions qui ont un son très vague et qualitatif, donc c'était ma tentative d'être plus précis. Toujours un réglage fin. – Anthony