trim関数
trim関数を使用すると、文字列から先行文字または後続文字(あるいはその両方)を切り捨てることができます。
構文
returnvalue trim(source [, position [, trim_character]])
source ::= any*
position ::= "leading"|"trailing"|"both"
trim_character ::= string*
returnvalue ::= string
セマンティクス
例11-9 trim関数
次の表を作成し、表に値を挿入して、trim、ltrimおよびrtrim関数の例を実行します。
CREATE TABLE trim_demo (
id INTEGER,
name STRING,
yearofbirth STRING,
PRIMARY KEY (id)
);
INSERT INTO trim_demo VALUES (10, " Peter ", 1980);
INSERT INTO trim_demo VALUES (20, "Mary", 1973);
INSERT INTO trim_demo VALUES (30, " Oliver", 2000);
INSERT INTO trim_demo VALUES (40, "John ", 2000);
SELECT * FROM trim_demo;
+----+-----------+-------------+
| id | name | yearofbirth |
+----+-----------+-------------+
| 10 | Peter | 1980 |
| 20 | Mary | 1973 |
| 30 | Oliver | 2000 |
| 40 | John | 2000 |
+----+-----------+-------------+
例11-10 trim関数
この例では、idとyearofbirthがtrim_demo表から選択されます。yearofbirthの末尾のゼロは、trim関数を使用して削除されます。
SELECT id, trim(yearofbirth,"trailing",'0') FROM trim_demo;
+----+----------+
| id | Column_2 |
+----+----------+
| 10 | 198 |
| 20 | 1973 |
| 30 | 2 |
| 40 | 2 |
+----+----------+
例11-11 trim関数
この例では、'19'がtrim_characterとして指定されています。ただし、セマンティクスに従って、最初の文字'1'のみが切捨ての対象になります。
SELECT id, trim(yearofbirth,"leading",'19') FROM trim_demo;
+----+----------+
| id | Column_2 |
+----+----------+
| 10 | 980 |
| 20 | 973 |
| 30 | 2000 |
| 40 | 2000 |
+----+----------+