select convert_from(artists, 'UTF8') from songs where
to_tsvector('simple',convert_from(artists, 'UTF8'))
@@ plainto_tsquery('simple','alizee')
limit 100
列 "artists" 的类型为 "TEXT"。
但是当我运行时
select convert_from(E'\u0422\u0438\u043c\u0430\u0442\u0438', 'UTF8');
它的表现很好。
我该如何解决这个问题? 非常感谢您的帮助。谢谢
artists
列中的一个值样本。在PostgreSQL的text
字段中无法存储“unicode”(假设您指的是utf-16 / utf-32 / ucs-2 / ucs-4),因为它包含空字节,而在text
字段中,空字节会终止字符串。所以无论发生了什么,这里都没有足够的信息来猜测。通过编辑问题来展示数据,完成后在此处发表评论。 - Craig Ringer