gpt4 book ai didi

sql - 需要有关简单 SQL 更新语句的帮助

转载 作者:搜寻专家 更新时间:2023-10-30 20:00:50 26 4
gpt4 key购买 nike

有一个类型为 varchar 的字段。它实际上存储了一个 float 字符串。比如 2.0 , 12.0 , 34.5 , 67.50 ...我需要的是删除 2.0、12.0 等字段的结尾零的更新语句,将它们更改为整数表示形式,即 2、12 ...,并保持 3.45、67.50 不变。我应该怎么做?我正在使用 Oracle 10。

最佳答案

只要字段中的唯一数据是数字,那么像这样的东西就应该这样做...

UPDATE <table>
SET not_string = TRIM( TO_CHAR( TO_NUMBER( not_string ), '999999999999' ) )
WHERE TO_NUMBER( not_string ) = TRUNC( TO_NUMBER( not_string ) )

WHERE 子句应将更新限制为整数,SET 部分将 VARCHAR2 转换为数字,然后返回具有所需格式的 VARCHAR(根据需要更改 9 的数量或依赖 NLS 设置)以返回字符串在现场。

另外,因为大多数人都(或至少应该)这么想..

如果该字段是数字,则将其存储在正确的数据类型中,可以在输出时更改格式,并且可以避免这种字符串解析!

关于sql - 需要有关简单 SQL 更新语句的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2550916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com