RTRIM
RTRIM 函數會從表示式結尾移除 任何指定的字元 。
RTRIM 函數會從 string-expression的結尾移除 trim-expression 中包含的所有字元。 對照順序不會影響搜尋。 如果 string-expression 定義為 FOR BIT DATA 或二進位資料類型,則會透過比較 trim-expression 中的每一個位元組與 string-expression結尾的位元組來執行搜尋。
- 字串表示式
- 傳回任何內建數值、 datetime、 string、
或 Boolean
資料類型的值的表示式。 1 在評估函數之前,會將數值、 datetime、
或布林
引數強制轉型為字串。 如需將數值、 datetime、
及布林
轉換為字串的相關資訊,請參閱 VARCHAR。 - 修整表示式
- 指定要從 string-expression結尾移除之字元的表示式。 表示式必須傳回任何內建數值、 日期時間、 字串、
或布林
資料類型的值。 在評估函數之前,會將數值、 datetime、
或布林
引數強制轉型為字串。未指定 trim-expression 時, string-expression 的資料類型會決定使用的預設值:- 如果引數是二進位字串,則為十六進位零 (X'00 ')。
- 如果引數是 DBCS 圖形字串,則 DBCS 空白。
- UTF-16 或 UCS-2 空白 (如果第一個引數是 Unicode 圖形字串)。
- 如果第一個引數是 UTF-8 字串,則為 UTF-8 空白。
- 否則為 SBCS 空白。
string-expression 的值和 trim-expression 的值必須具有相容的資料類型。 如需資料類型相容性的相關資訊,請參閱 指派及比較。 如果 string-expression 和 trim-expression 有不同的 CCSID , trim-expression 會轉換為 string-expression的 CCSID。
結果的資料類型取決於 string-expression的資料類型:
| string-expression 的資料類型 | 結果的資料類型 |
|---|---|
| CHAR 或 VARCHAR | VARCHAR |
| CLOB | CLOB |
| GRAPHIC 或 VARGRAPHIC | VARGRAPHIC |
| DBCLOB | DBCLOB |
| BINARY 或 VARBINARY | VARBINARY |
| BLOB | BLOB |
結果的長度屬性與 string-expression的長度屬性相同。 字元或二進位字串的實際結果長度是 string-expression 減去移除的位元組數的長度。 圖形字串結果的實際長度是 string-expression 的長度 減去移除的圖形字元數。 如果移除所有字元,則結果會是空字串。
如果任一引數可以是空值,則結果可以是空值; 如果任何引數是空值,則結果是空值。
結果的 CCSID 與 string-expression的 CCSID 相同。
範例
- 範例 1: 當主變數 HELLO 定義為 CHAR (9) 且具有值時,請使用 RTRIM 函數
'Hello '
結果為 'Hello'。 未指定 trim-expression 時,只會移除空白。VALUES RTRIM(:HELLO) - 範例 2: 使用 RTRIM 函數從 string-expression的結尾 (右側) 移除 trim-expression 中的個別數字。
結果為:SELECT RTRIM ('123DEFG123', '321'), RTRIM ('12322XYZ12322222', '123'), RTRIM ('12321', '213'), RTRIM ('123XYX', '321') FROM SYSIBM.SYSDUMMY1
RTRIM 函數不會移除字串左側 '1'、'2' 及 '3' 的實例,位於非 '1'、'2' 或 '3' 的字元之前。'123DEFG' '12322XYZ' '' (empty string - all characters removed) '123XYX' (no characters removed) - 範例 3: 使用 RTRIM 函數,從 string-expression的結尾移除 trim-expression 中指定的字元。
結果為 '...$VAR'。VALUES RTRIM('...$VAR$...', '$.') - 範例 4: 使用 RTRIM 函數,從 string-expression的結尾移除 trim-expression 中指定的字元。
結果為 '((-78'。 移除字元及空白時,您必須在 trim-expression中包含空白。VALUES RTRIM('((-78.0) )', '-0. ()')
1 RTRIM 函數會傳回與下列相同結果: STRIP (表示式, TRALYING)
