try 使用实际的希腊文本,而不是转义序列.就像PHP、Python、C++、JavaScript、Java、C#一样,您在源代码中使用的转义序列或在调试器中看到的转义序列并不会真正出现在字符串中.编译器将它们替换为实际的字符.同样的情况也发生在JSON反序列化程序中.
这意味着
{"text":"\u0391\u03bd\u03b1\u03bc\u03bf\u03bd\u03ae \u0395\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7\u03c2 \u03b1\u03c0\u03cc"}
等同于
{"text":"Αναμονή Ενημέρωσης από"}
try
select * from tableX where text->>'text' like '%Αναμονή%'
JSON字符串是Unicode,所以没有理由使用转义序列.当使用转义序列时,解析器会用实际字符替换它们.
作为参考,从RFC8259: The JavaScript Object Notation (JSON) Data Interchange Format
在Strings section强中
string = quotation-mark *char quotation-mark
char = unescaped /
escape (
%x22 / ; " quotation mark U+0022
%x5C / ; \ reverse solidus U+005C
%x2F / ; / solidus U+002F
%x62 / ; b backspace U+0008
%x66 / ; f form feed U+000C
%x6E / ; n line feed U+000A
%x72 / ; r carriage return U+000D
%x74 / ; t tab U+0009
%x75 4HEXDIG ) ; uXXXX U+XXXX
escape = %x5C ; \
quotation-mark = %x22 ; "
unescaped = %x20-21 / %x23-5B / %x5D-10FFFF
这意味着除8 can以外的所有Unicode字符都显示为未转义.
从8.1 Character Encoding
在不属于关闭的系统的系统之间交换的JSON文本
生态系统必须使用UTF-8编码