我有一个带有价格字段的数据库。这个价格字段被定义为varchar。值有点像123,45。我需要将此varchar字段转换为所有记录中的整数。我如何解决这个问题?将varchar转换为整数
回答
如果所有在mySQL中都在进行转换,CAST就是你的朋友。
http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html#function_cast
如果你正在做它的MySQL之外,几乎所有的语言都投功能应该能够采取一种输入作为一个字符串,并试图将其转换为所需的值 - 例如,C#可能使用int.Parse(string);
我认为最好的方法是创建一个新的整数字段。现在我需要知道如何将价格值(varchar字段)存储到这个新的整数字段。 – 2013-04-03 19:07:26
你可以用铸造法或修改表
ALTER TABLE yrtable ALTER COLUMN `price` DECIMAL (10,2);
ALTER TABLE produtos_vendidos ALTER COLUMNpreçoDECIMAL(10,2);这给了我一个错误 – 2013-04-03 18:59:03
您将需要确保该列中的所有值都可以是数字。此外,如果列是主键,则可能需要在更改类型之前删除该列,然后重置该列上的主键。 – iowatiger08 2013-04-03 19:18:21
尝试使用MODIFY关键字。 ALTER TABLE yrtable MODIFY price DECIMAL(10,2); – iowatiger08 2013-04-03 19:21:30
这对我更好地工作。它来自文档。
ALTER TABLE yrtable CHANGE columnname columnnameagain BIGINT NOT NULL;
- 1. 在teradata中将varchar转换为整数
- 2. 如何将varchar转换为整数
- 3. 将varchar转换为数字
- 4. 将varchar转换为数字
- 5. 将数值转换为Varchar
- 6. 将整数转换为转换后的varchar T-SQL字段
- 7. 更新数组并将其从varchar转换为整数
- 8. 将Varchar值转换为散列值:varchar
- 9. 将Varchar转换为双份
- 10. SQL - 将varchar转换为datetime
- 11. 将varchar转换为nvarchar
- 12. 将varchar转换为monthDate
- 13. 将varchar转换为datetime
- 14. 将varchar列转换为smalldatetime
- 15. 将varchar转换为时间
- 16. 将GUID转换为varchar(32)
- 17. 将Varchar转换为Ascii
- 18. PostgreSQL - 将varchar转换为int?
- 19. 将varchar(32)转换为bigint
- 20. SQL将int转换为varchar
- 21. 将文本转换为Varchar
- 22. 将Varchar 3转换为int
- 23. 将nvarchar转换为varchar
- 24. 将varchar转换为datetime
- 25. Oracle将Varchar字段转换为数字如何将其转换回Varchar
- 26. 如何在SQL Server 2014中将整数列转换为varchar?
- 27. 使用Hibernate在Oracle上将varchar转换为整数
- 28. 在休眠映射中将VARCHAR转换为整数
- 29. 将varchar转换为整数并在MySql查询中排序
- 30. 在SQL Server中将Varchar值转换为整数/十进制值
为什么要整数?如果这应该是'123.45',那么你会失去'.45' – 2013-04-03 18:47:34
我需要更改为整数字段,因为我需要创建一些报告,但程序只使用整数字段。 – 2013-04-03 19:10:10
那么整数值应该是多少呢? '123'? '12345'? – 2013-04-03 19:10:43