sql - SQL - 删除小数并将其值包含在数字中
问题描述
我不认为这个主题的标题很好地说明了我需要做什么,我有一个表格,上面有这样的数字:
Number - 32.4
我想要做的是删除数字的十进制值并包括左侧小数点右侧的值,它必须是这样的:
Number - 324
我试过这个查询:
UPDATE table
SET Number = CAST(Number AS INT)
WHERE Number LIKE '%.%'
它删除了 . 但也要删除小数点右侧的值。像这样:
Number - 32
这个问题有什么线索吗??
解决方案
如果所有数字都有两位小数,那么您可以使用:
UPDATE table
SET Number = CAST(Number * 100 AS INT);
但也许您的意图是转换为字符串,然后再转换回 int:
UPDATE table
SET Number = CAST(REPLACE(CAST(Number as VARCHAR(255)), '.', '') AS INT);
推荐阅读
- php - htaccess URL 将 301 重定向为小写,但有异常
- set - 在 Dafny 中,我可以定义一个映射集合的方法吗?
- c# - 如何将 ajax 数据发布到 aspx.cs 页面加载事件 asp.net?
- c++ - FastLED.h 阻止 ezButton.h
- jmeter - 修改或控制外部 JMeter 测试计划(JMX 文件)的 RPS
- c++ - 如何正确删除指向 C++ 结构中数组的指针?
- shell - 如何从特定路径中存在的makefile中搜索包含“PRODUCT_VARIANT_NAMES”的字符串并使用shell脚本存储在数组中
- python - 使用python中的格式字符串从文本字符串中提取值
- jaxb - JAXB 可以将“”解析为加倍吗?
- r - 多个指标、多个用户、多个事件、R