鍍金池/ 問答/PHP  數(shù)據(jù)庫/ Mysql無法查詢字段值為Unicode編碼的問題

Mysql無法查詢字段值為Unicode編碼的問題

有一個數(shù)據(jù)庫表,字段中存儲的是json格式的數(shù)據(jù),json你懂得就是數(shù)據(jù)中中文都被轉(zhuǎn)換成了Unicode字符。字段數(shù)據(jù)示例:

{"realname":"\u9a6c\u672a\u90fd","identity_card":"42049982688888"}

我現(xiàn)在的查詢語句是:

SELECT * FROM `表名` WHERE `type` = 2 AND `card` LIKE '%\\u672a\\u90fd%';

不知道為什么查詢不到數(shù)據(jù)?求大神幫忙解答一下。條件中去掉一個反斜杠也不行。

回答
編輯回答
舊城人

LIKE '%\\\\u672a\\\\u90fd%';
https://stackoverflow.com/que...

To get the LIKE comparison to match a literal backslash character, we need two backslash characters. As we just demonstrated, to get a backslash character in a string literal requires two backslashes. So we need a total of four backslash characters.

首先很感謝夜影給予的幫助,上述方法真實可用。下面是我結(jié)合夜影的方法做的一些補充。等于兩種方法都可以解決此類問題,具體請參考:https://www.zkii.net/tech/php...

2017年7月24日 16:15
編輯回答
礙你眼

去掉like ,看一下realname字段是 u9a6cu672au90fd 格式的嗎.

2017年7月25日 00:58