有没有一种更简单的方法可以基于sql中的字符编辑值?

有没有一种更简单的方法可以基于sql中的字符编辑值?,sql,casting,Sql,Casting,我有一个名为population的列,它是一种文本类型,因为它无法将带有逗号的值转换为数值,如下所示。我使用以下查询来选择它们:selectpopulationfromtall_表,其中population(如“%”,%”之类的填充)。SQL中是否有一种有效的方法来删除此逗号,以便我可以将其转换为数值类型,而无需对每个值使用update查询 您可以使用替换功能删除逗号,如下所示: select replace(population,',','') from total_table; 您可以使用

我有一个名为
population
的列,它是一种文本类型,因为它无法将带有逗号的值转换为
数值
,如下所示。我使用以下查询来选择它们:
selectpopulationfromtall_表,其中population(如“%”,%”之类的填充)
。SQL中是否有一种有效的方法来删除此逗号,以便我可以将其转换为
数值类型,而无需对每个值使用
update
查询


您可以使用替换功能删除逗号,如下所示:

select replace(population,',','') from total_table;

您可以使用replace函数删除逗号,如下所示:

select replace(population,',','') from total_table;

如果要更新要使用的值,请执行以下操作:

update total_table
     set population = replace(population, ',', '')
     where population like '%,%';
然后可以更改表的类型。在大多数数据库中,这类似于:

alter total_table alter population int;

数值
或任何您想要的类型。

如果您想要更新要使用的值:

update total_table
     set population = replace(population, ',', '')
     where population like '%,%';
然后可以更改表的类型。在大多数数据库中,这类似于:

alter total_table alter population int;
数值
或任何您想要的类型。

您可以使用:,和。如果您知道它将被用作数值,那么您应该有另一列,在该列中还存储了要读取的数值,并确保它始终使用文本值进行更新。最好不要使用文本列。您可以使用:、和。如果您知道它将被用作数值,那么您应该有另一列,在该列中还存储了要读取的数值,并确保它始终使用文本值进行更新。最好不要使用文本列。