如何在提取记录时删除百分比符号

时间:2016-02-21 08:36:02

标签: sql sql-server-2008

我有下表员工:

Name Percentage
---------------
rad    80%
deepak 20%
kavita 30%

我想使用SQL Server 2008编写SQL select查询来返回这些结果:

rad 80
deepak 20
kavita 30

如何实现这一目标?

3 个答案:

答案 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;

我来晚了,但希望这能帮助现在解决这个问题的人:)