2010-10-04 3 views

Répondre

2

C'est un truc de présentation, mais il est géré de la même manière. Vous devez change the data type of the result to a string based one:

CAST((qty(S) + qty(B))/qty(id)*100 AS CHAR(2))+'%' 
+0

Merci pour la clarification. Et bonne réponse. – JoshD

+0

@JoshD: Je ne voulais pas vous supprimer votre réponse, il suffit de corriger la syntaxe. –

+1

Ma réponse était désinformative (c'est un mot maintenant), et la corriger signifierait essentiellement copier votre réponse. Je me suis dit que je débarrasserais la confusion. – JoshD

9

Les bases de données sont utilisées pour stocker des données . La présentation des données ne devrait pas être de sa responsabilité. Par cela, je veux dire que vous devriez très rarement chose sur le stockage d'une valeur de chaîne dans la base de données comme '75%'.

Si vous souhaitez un formatage spécifique, le meilleur endroit pour le faire est après l'extraction des données:

select concat(your_column,'%') as percent ... 

Parce que concat attend les chaînes, les valeurs numériques sont automagiquement jetés dans la chaîne avant de les joindre ensemble.

Questions connexes