Mysql 在phpMyAdmin中将varchar转换为int返回0?

Mysql 在phpMyAdmin中将varchar转换为int返回0?,mysql,sql,casting,phpmyadmin,varchar,Mysql,Sql,Casting,Phpmyadmin,Varchar,我有一个格式为varchar(1000)的Salary列,我没有修改表结构的权限。有些数据是用逗号输入的(例如58000),有些则没有(例如52000)。我尝试将此字段转换为数值的任何方式都会将带逗号的薪水更改为0。我做错了什么 如果我这样做: SELECT uniqueid, REPLACE(salary,",","") FROM job_offer; 我知道那个人的名字和58000。 所以我希望如果我这样做 SELECT uniqueid, CAST(REPLACE(salary,",",

我有一个格式为varchar(1000)的Salary列,我没有修改表结构的权限。有些数据是用逗号输入的(例如58000),有些则没有(例如52000)。我尝试将此字段转换为数值的任何方式都会将带逗号的薪水更改为0。我做错了什么

如果我这样做:

SELECT uniqueid, REPLACE(salary,",","") FROM job_offer;
我知道那个人的名字和58000。 所以我希望如果我这样做

SELECT uniqueid, CAST(REPLACE(salary,",","") as unsigned) FROM job_offer;
……什么都不应该改变。但它的工资回报率是0,而不是58000

除了unsigned之外,我还尝试过其他数据类型,我也尝试过使用CONVERT,但仍然没有成功。我在网上花了几个小时寻找答案,但也没有成功


最终,我试图取平均工资,这阻止了我这样做。任何帮助都将不胜感激

如果只是供选择,那么替换(薪水,,,,)就足够了。谢谢!但当我尝试取平均值时,这就产生了一个问题,因为它是非数字的,我看到我刚刚在mysql上尝试过,似乎正在使用
select cast(替换('58000',','','')作为未签名)作为薪水输出
58000
hmm,是不是我没有使用cast的权限?这似乎不应该成为一个问题。我不认为这会成为一个问题。