Par exemple, j'ai une table comme celle-ci: Quand j'ai besoin de tout enregistrement, je fais comme ça et obtenez 3 résultats: p> select * from tableName
6 Réponses :
(SELECT product,
quantity,
something
FROM tablename)
UNION
(SELECT "all" AS product,
SUM(quantity) AS quantity,
SUM(something) AS something
FROM tablename)
This is working query. It will add a fourth row as desired at the end of your result
$q="select sum(quantity), sum(something) from tableName";
Ce n'est pas la meilleure façon de résoudre ce problème, mais devrait faire le tour
Vous pouvez
SELECT Product, Quantity, Something FROM TABLENAME UNION SELECT 'ALL', SUM(Quantity),SUM(Something) FROM TABLENAME
Vous pouvez utiliser Rollup pour générer des totaux, mais vous devez le modifier à une fonction agrégée, comme ceci:
SELECT product, sum(quantity), sum(something) FROM tableName GROUP BY product WITH ROLLUP
Cela devrait être la réponse acceptée, car c'est le plus efficace et le plus court
Fonctionne parfaitement et c'est simple AF
Essayez d'éviter la requête des syndicats, il peut augmenter le temps d'exécution en cas de jointures et de requêtes de cas. Donc, comme @chris Strickland dit, utilisez-le avec Rollup. P>
Je pense que vous devez exécuter votre demande à nouveau avec une instruction
somme () code> (voir Tizag.com/mysqlTutorial/mysqlsum.php )