Maison > Questions et réponses > le corps du texte
J'ai écrit une requête simple pour trouver le pourcentage de deux colonnes, mais je souhaite que les résultats soient dans la colonne avec seulement deux décimales. C'est ce que j'ai écrit mais j'obtiens une erreur et je n'arrive pas à la corriger.
SELECT Small_Bags, Total_Bags, (Small_Bags / Total_Bags) * 100 AS Small_Bags_Percent (Select CAST (Small_Bags_Percent AS DECIMAL (10,2))) FROM Table_Bags WHERE Total_Bags <>0
P粉6530458072024-04-03 12:46:35
Vous ne pouvez pas utiliser d'alias de colonne dans la même requête. tu peux le faire.
select Small_Bags , Total_Bags , (Small_Bags / Total_Bags) * 100 AS Small_Bags_Percent , cast(((Small_Bags / Total_Bags) * 100) as decimal(10,2)) from Table_Bags where Total_Bags > 0
Ou utilisez une sous-requête
select t1.Small_Bags, t1.Total_Bags, t1.Small_Bags_Percent , cast(t1.Small_Bags_Percent as decimal(10,2)) from (select Small_Bags , Total_Bags , (Small_Bags / Total_Bags) * 100 AS Small_Bags_Percent , cast(((Small_Bags / Total_Bags) * 100) as decimal(10,2)) from Table_Bags where Total_Bags > 0) t1