Quelle est la manière correcte d'extraire les valeurs maximales de toutes les colonnes d'une table avec une seule requête? Merci. Clarification: la même requête devrait fonctionner sur n'importe quelle table, c'est-à-dire que les noms de colonne ne doivent pas y être codés en dur.Requête MySQL pour max() de toutes les colonnes
2
A
Répondre
0
Vous allez devoir le faire en deux étapes - une pour récupérer la structure de la table, suivie d'une deuxième étape pour récupérer les valeurs maximales pour chaque
en php:
$table = "aTableName";
$columnsResult = mysql_query("SHOW COLUMNS FROM $table");
$maxValsSelect = "";
while ($aColumn = mysql_fetch_assoc($columnsResult)) {
if (strlen($maxValsSelect) > 0) {
//Seperator
$maxValsSelect .= ", ";
}
$maxValsSelect .= "MAX(" . $aColumn['Field'] . ") AS '" . $aColumn['Field'] . "'";
}
//Complete the query
$maxValsQuery = "SELECT $maxValsSelect FROM $table";
$maxValsResult = mysql_query($maxValsQuery);
//process the results....
5
SELECT max(col1) as max_col1, max(col2) as max_col2 FROM `table`;
0
Je pense (mais serais heureux d'être montré mauvais) que vous devez savoir au moins le nombre de colonnes dans la table, mais vous pouvez faire:
select max(c1),max(c2),max(c3),max(c4),max(c5)
from (
select 1 c1, 1 c2, 1 c3, 1 c4, 1 c5 from dual where 0
union all
select * from arbitrary5columntable
) foo;
Évidemment, vous perdez tous les avantages de l'indexation.
Questions connexes
- 1. Mysql Max requête
- 2. Requête MySQL: Obtenir toutes les pochettes d'album
- 3. Sélectionnez requête dans SQL + Toutes les valeurs dans les colonnes
- 4. Trouver toutes les majuscules dans les colonnes?
- 5. requête MySQL pour copier date à partir de différentes colonnes
- 6. Zend sélectionne toutes les colonnes
- 7. erreur de requête MySQL
- 8. mysql & php - requête pour l'enregistrement avec toutes les valeurs ou moins, mais pas plus
- 9. Mysql colation pour toutes les langues
- 10. SPListItemCollection.GetDataTable() ne retourne pas toutes les colonnes?
- 11. MySQL: Mise à jour toutes les colonnes avec des valeurs d'une table séparée
- 12. API OpenOffice - Option OptimalWidth pour table (toutes les colonnes)
- 13. Mysql join basé sur max (timestamp)
- 14. Autoriser les valeurs entre guillemets dans les colonnes entières mysql?
- 15. types de colonnes Mysql
- 16. extraction de sous-requête - Toutes les lignes
- 17. Requête SQL pour rechercher le schéma de toutes les tables
- 18. mysql trop de colonnes?
- 19. MYSQL MAX et min QUERY
- 20. Quantité totale de colonnes dans mySQL!
- 21. requête MySQL pour obtenir les frais
- 22. Question de requête MySQL
- 23. requête MySQL pour tous les termes de recherche dans l'index
- 24. MySQL requête aide
- 25. Sélectionner toutes les colonnes de toutes les tables dans SQL Server 2008
- 26. requête SQL pour joindre plusieurs colonnes
- 27. script shell pour tronquer toutes les tables MySql
- 28. colonne conditionnelle pour la requête en fonction d'autres colonnes de MySQL
- 29. Mysql OPTIMIZE TABLE pour toutes les tables fragmentées
- 30. MySQL Select Instruction DISTINCT pour plusieurs colonnes
En fait, je l'ai fait en Python. Je marque votre réponse comme acceptée, même si je m'attendais initialement à une solution SQL uniquement. Merci. – dpq