IBM DB2 for i SQL (iSeries) - 使用更新从字段末尾删除字符

IBM DB2 for i SQL (iSeries) - Removing a character from end of a field using update

我有一个名为 PDPRODP 的产品 table - 对于此 table 中的某些样式,我使用 concat 语句为其描述添加句号 (PRDESC),我现在希望删除这个句号。

描述的长度各不相同,字段最大大小为 30 个字符,我需要物理删除句号而不是使用 select 语句来 trim 句号。

我试过了;

UPDATE PDPRODP SET PRDESC = PRDESC-1 where PRSTYLE = 1234

但是我得到了这个错误:

Character in CAST argument not valid.

我在谷歌搜索后也试过这个;

UPDATE PDPRODP SET PRDESC=LEFT(PRDESC, LEN(PRDESC)-1)
WHERE PRCOMP = 1 AND PRSTYL = 31285 

但是出现这个错误:
LEN in *LIBL type *N not found.

使用长度

UPDATE PDPRODP SET PRDESC=LEFT(PRDESC, LENGTH(PRDESC)-1)
WHERE PRCOMP = 1 AND PRSTYL = 31285 

REPLACE() 函数可以搜索所有出现的某个字符串,并用另一个替换它的位置。您可能会搜索您的句号,并将其替换为零长度字符串 ''。这在您的搜索字符串可能并不总是在末尾的情况下会很方便。