我有下表员工:
Name Percentage
---------------
rad 80%
deepak 20%
kavita 30%
我想使用SQL Server 2008编写SQL select查询来返回这些结果:
rad 80
deepak 20
kavita 30
如何实现这一目标?
答案 0 :(得分:1)
不确定您需要什么,替换不起作用 SELECT REPLACE('rad 80%deepak 20%kavita 30%','%','');
修改强>
Select name, REPLACE(percentage,'%','');
答案 1 :(得分:1)
要替换选择查询中的单个字符:
只要你想剥离任何字符,你可以简单地使用替换函数是一般语法的样子
REPLACE ( StringExpression, StringPattern, ReplacementString)
所以在你的情况下,它将是如下
SELECT name, REPLACE(percentage,'%','');
GO
请注意,您也可以使用其他方法实现相同目的,即COLLATE Function
SELECT REPLACE('percentage' COLLATE Latin1_General_BIN,'%', '');
GO
如果您想了解有关使用COLLATE的更多信息,请查看此LINK
希望我的回答可以帮助你实现你想要的目标。
答案 2 :(得分:0)
您还应该使用 AS 重新定义列的名称。当您使用 REPLACE 时,列将其名称更改为位置编号。因此,维护列标题的正确代码是:
SELECT name, REPLACE(percentage,'%','') AS PERCENTAGE FROM TABLENAME;
我来晚了,但希望这能帮助现在解决这个问题的人:)