Postgresql - 即使值太长也要更新列

Postgresql - update column even if value is too long

我有这个查询:

begin    
    update res_partner_address rpa
    set name = rp.name
    from res_partner rp
    where rpa.partner_id = rp.id
    and rpa.name is NULL
end;

当我尝试更新该列时,出现此错误:

ERROR:  value too long for type character varying(64)

所以 namerp.name 的最大长度不同。有没有办法将值截断为 name 的长度,以便我可以更新它?

只需使用 res_partner table:

的前 64 个字符
update res_partner_address rpa
  set name = left(rp.name,64)
from res_partner rp
where rpa.partner_id = rp.id
and rpa.name is NULL