在數據庫操作中,經常需要對某些字段進行解碼,例如在查詢結果中,需要將某個字段的編碼解析成可讀的字符串,這時候就可以使用decode函數。
SELECT decode('Y2F0ZWdvcnk=','base64') as company;
上述代碼將'Y2F0ZWdvcnk='這個base64編碼的字符串解碼成了company字段。
然而,在MySQL中,并沒有decode函數可用,那應該怎么辦呢?這時候可以使用MySQL的內置函數UNHEX和CONVERT函數來替代decode函數。
SELECT CONVERT(UNHEX('63617465676f7279') USING utf8) as company;
這段代碼的含義是先將16進制編碼的字符串'63617465676f7279'轉換成二進制,并通過UNHEX函數將二進制轉換成字符串,最后通過CONVERT函數將字符串轉換成utf8編碼的company字段。
通過這種方式,我們可以替換掉decode函數在MySQL中缺失的問題,實現同樣的功能。
下一篇css中的 號選擇器