Why do you expect the concatenation of two characters to return a length of one?
From: 荒井元成 <n2029@xxxxxxxxxxxxx>
thank you for your reply. It will be 2 characters.
select char_length(U&'\+008FBA' || U&'\+0E0102'); char_length ------------- 2 (1 行)
select length('辺󠄂'); length -------- 2 (1 行)
select char_length('辺󠄂'); char_length ------------- 2 (1 行)
$ psql -l データベース一覧 名前 | 所有者 | エンコーディング | 照合順序 | Ctype(変換演算子) | アクセス権限 -----------+---------+------------------+----------+-------------------+--------------------- D209007 | D209007 | UTF8 | C | C | postgres | D209007 | UTF8 | C | C | template0 | D209007 | UTF8 | C | C | =c/D209007 + | | | | | D209007=CTc/D209007 template1 | D209007 | UTF8 | C | C | =c/D209007 + | | | | | D209007=CTc/D209007 (4 行)
$ cat pgdata/PG_VERSION 13
Moto.
From: David G. Johnston <david.g.johnston@xxxxxxxxx>
Try char_length(text) instead.
David J.
|