gpt4 book ai didi

postgresql - 带整数字段的 UPDATE 语句中的 RIGHT 函数

转载 作者:行者123 更新时间:2023-11-29 13:47:02 24 4
gpt4 key购买 nike

我正在尝试在 integer 字段上运行一个简单的 UPDATE 脚本,从而“保留”尾随的 2 个数字,并删除前导数字。例如,“0440”将更新为“40”。我可以在 SELECT 语句中获取所需的数据,例如

SELECT RIGHT(field_name::varchar, 2) 
FROM table_name;

但是,当我尝试在 UPDATE 脚本中使用相同的功能时遇到错误,例如:

UPDATE schema_name.table_name 
SET field_name = RIGHT(field_name::varchar, 2);

我收到的错误是:

column . . . is of type integer but expression is of type text . . . HINT: You will need to rewrite or cast the expression

最佳答案

您正在将整数转换为 varchar,但并未将结果转换回整数。

UPDATE schema_name.table_name 
SET field_name = RIGHT(field_name::TEXT, 2)::INTEGER;

关于postgresql - 带整数字段的 UPDATE 语句中的 RIGHT 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46675917/

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