[SQL] Eclater le contenu d'un champ

Fermé
frenchfrog2 - 28 mars 2011 à 13:46
 frenchfrog2 - 28 mars 2011 à 15:31
Bonjour,

J'ai une table MySQL qui est remplie via un formulaire.
Les colonnes sont : id, nom de l'application, cout annuel, type
Le champ "type" du formulaire est une liste de cases à cocher permettant de sélectionner le type de business utilisant l'application, donc peut être multiple (ex : finance, projet, technique...). Quand cette sélection est multiple, le caractère de séparation utilisé dans la table est "|-|" (sans les guillemets).

Maintenant je voudrais, via deux requêtes MySQL, extraire le nombre d'applications par type et la somme des coûts des applications par type.

Je débute en SQL est les requêtes classique ne fonctionne pas car les informations sont multiples dans la colonne Type.

Pourriez-vous m'aider ?

Merci d'avance.

3 réponses

Melooo Messages postés 1405 Date d'inscription vendredi 28 novembre 2008 Statut Membre Dernière intervention 18 mars 2013 84
28 mars 2011 à 14:23
Bonjour,
Essayes de faire une requête qui te sélectionnes toutes les types de tes applications, et ensuite tu découpes le type avec explode et ensuite tu construis ta requête de comptage en fonction du tableau explode que tu viens de créer.
0
frenchfrog2
28 mars 2011 à 15:07
Bonjour Meloo,
Merci pour ta réponse.
Le problème est que Explode n'existe pas en MySQL.
Avec une requête du style :
SELECT type, COUNT(id) FROM applications GROUP BY type

j'obtiens un résultat du style :
Projet - 5
Finance - 11
Services Techniques - 8
Projet|-|Finance - 7
Projet|-|Services Techniques - 9
...
Ce n'est pas vraiment ce que je veux.
Je sais que la structure n'est pas idéale et qu'il vaudrait mieux avoir une jointure avec une table externe. Le problème est que j'ai récupéré une table existante contenant déjà plusieurs milliers d'informations et je voudrais éviter de casser la structure.

A l'aide !
0
Melooo Messages postés 1405 Date d'inscription vendredi 28 novembre 2008 Statut Membre Dernière intervention 18 mars 2013 84
28 mars 2011 à 15:11
Oui je sais que explode n'exite pas en MySql mais tu affiches bien tes données en php ?
0
Meloo,
Non en fait c'est pour un besoin particulier.
J'utilise un outils sur un site qui permet de faire des graphiques à partir de requêtes MySQL (SELECT...) sur les tables.
Donc ma requête doit être 100% MySQL.

Merci encore pour ton aide Meloo.
0