如何只查询有表情符号的数据(postgresql)
How to query only the data that has emojis (postgresql)
我的数据在数据库列中包含表情符号,即
message_text
-------
Hi
我只想查询包含表情符号的数据的行。有没有在 postgres 中执行此操作的简单方法?
select data from table where data_col contains emoji
目前我使用的是简单查询
select message_text from cb_messages_v1 cmv
where message_text IN ('','','','', '')
但我希望它更加动态,如果添加未来的情绪,它将捕获数据。
从你的例子来看,你似乎不仅对表情符号 (U+1F601 - U+1F64F)感兴趣,而且对杂项符号和象形文字感兴趣 (U+1F300 - U+1F5FF) 和 运输和地图符号 (U+1F680 - U+1F6C5)。
您可以通过
找到包含其中之一的值
WHERE textcol ~ '[\U0001F300-\U0001F6FF]'
~
为正则表达式匹配运算符,pattern为Unicode字符范围
我的数据在数据库列中包含表情符号,即
message_text
-------
Hi
我只想查询包含表情符号的数据的行。有没有在 postgres 中执行此操作的简单方法?
select data from table where data_col contains emoji
目前我使用的是简单查询
select message_text from cb_messages_v1 cmv
where message_text IN ('','','','', '')
但我希望它更加动态,如果添加未来的情绪,它将捕获数据。
从你的例子来看,你似乎不仅对表情符号 (U+1F601 - U+1F64F)感兴趣,而且对杂项符号和象形文字感兴趣 (U+1F300 - U+1F5FF) 和 运输和地图符号 (U+1F680 - U+1F6C5)。
您可以通过
找到包含其中之一的值WHERE textcol ~ '[\U0001F300-\U0001F6FF]'
~
为正则表达式匹配运算符,pattern为Unicode字符范围