Rumah > Soal Jawab > teks badan
Saya menulis pertanyaan mudah untuk mencari peratusan dua lajur, tetapi saya mahu hasilnya berada dalam lajur dengan hanya dua tempat perpuluhan. Inilah yang saya tulis tetapi saya mendapat ralat dan saya tidak dapat membetulkannya.
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
Anda tidak boleh menggunakan alias lajur dalam pertanyaan yang sama. awak boleh lakukannya.
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
Atau gunakan subquery
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