Após pesquisar um pouco, caí neste tópico do fórum do MySQL. Nele tem uma função pronta para substituir as entidades HTML por seus respectivos caracteres Unicode. Vou reproduzi-la aqui:
DELIMITER $$ DROP FUNCTION IF EXISTS `html_unencode`$$ CREATE DEFINER=`root`@`localhost` FUNCTION `html_unencode`(x VARCHAR(255)) RETURNS varchar(255) CHARSET latin1 BEGIN DECLARE TextString VARCHAR(255) ; SET TextString = x ; #quotation mark IF INSTR( x , '"' ) THEN SET TextString = REPLACE(TextString, '"','"') ; END IF ; #apostrophe IF INSTR( x , ''' ) THEN SET TextString = REPLACE(TextString, ''','"') ; END IF ; #ampersand IF INSTR( x , '&' ) THEN SET TextString = REPLACE(TextString, '&','&') ; END IF ; #less-than IF INSTR( x , '<' ) THEN SET TextString = REPLACE(TextString, '<','<') ; END IF ; #greater-than IF INSTR( x , '>' ) THEN SET TextString = REPLACE(TextString, '>','>') ; END IF ; #non-breaking space IF INSTR( x , ' ' ) THEN SET TextString = REPLACE(TextString, ' ',' ') ; END IF ; #inverted exclamation mark IF INSTR( x , '¡' ) THEN SET TextString = REPLACE(TextString, '¡','¡') ; END IF ; #cent IF INSTR( x , '¢' ) THEN SET TextString = REPLACE(TextString, '¢','¢') ; END IF ; #pound IF INSTR( x , '£' ) THEN SET TextString = REPLACE(TextString, '£','£') ; END IF ; #currency IF INSTR( x , '¤' ) THEN SET TextString = REPLACE(TextString, '¤','¤') ; END IF ; #yen IF INSTR( x , '¥' ) THEN SET TextString = REPLACE(TextString, '¥','¥') ; END IF ; #broken vertical bar IF INSTR( x , '¦' ) THEN SET TextString = REPLACE(TextString, '¦','¦') ; END IF ; #section IF INSTR( x , '§' ) THEN SET TextString = REPLACE(TextString, '§','§') ; END IF ; #spacing diaeresis IF INSTR( x , '¨' ) THEN SET TextString = REPLACE(TextString, '¨','¨') ; END IF ; #copyright IF INSTR( x , '©' ) THEN SET TextString = REPLACE(TextString, '©','©') ; END IF ; #feminine ordinal indicator IF INSTR( x , 'ª' ) THEN SET TextString = REPLACE(TextString, 'ª','ª') ; END IF ; #angle quotation mark (left) IF INSTR( x , '«' ) THEN SET TextString = REPLACE(TextString, '«','«') ; END IF ; #negation IF INSTR( x , '¬' ) THEN SET TextString = REPLACE(TextString, '¬','¬') ; END IF ; #soft hyphen IF INSTR( x , '­' ) THEN SET TextString = REPLACE(TextString, '­','') ; END IF ; #registered trademark IF INSTR( x , '®' ) THEN SET TextString = REPLACE(TextString, '®','®') ; END IF ; #spacing macron IF INSTR( x , '¯' ) THEN SET TextString = REPLACE(TextString, '¯','¯') ; END IF ; #degree IF INSTR( x , '°' ) THEN SET TextString = REPLACE(TextString, '°','°') ; END IF ; #plus-or-minus IF INSTR( x , '±' ) THEN SET TextString = REPLACE(TextString, '±','±') ; END IF ; #superscript 2 IF INSTR( x , '²' ) THEN SET TextString = REPLACE(TextString, '²','²') ; END IF ; #superscript 3 IF INSTR( x , '³' ) THEN SET TextString = REPLACE(TextString, '³','³') ; END IF ; #spacing acute IF INSTR( x , '´' ) THEN SET TextString = REPLACE(TextString, '´','´') ; END IF ; #micro IF INSTR( x , 'µ' ) THEN SET TextString = REPLACE(TextString, 'µ','µ') ; END IF ; #paragraph IF INSTR( x , '¶' ) THEN SET TextString = REPLACE(TextString, '¶','¶') ; END IF ; #middle dot IF INSTR( x , '·' ) THEN SET TextString = REPLACE(TextString, '·','·') ; END IF ; #spacing cedilla IF INSTR( x , '¸' ) THEN SET TextString = REPLACE(TextString, '¸','¸') ; END IF ; #superscript 1 IF INSTR( x , '¹' ) THEN SET TextString = REPLACE(TextString, '¹','¹') ; END IF ; #masculine ordinal indicator IF INSTR( x , 'º' ) THEN SET TextString = REPLACE(TextString, 'º','º') ; END IF ; #angle quotation mark (right) IF INSTR( x , '»' ) THEN SET TextString = REPLACE(TextString, '»','»') ; END IF ; #fraction 1/4 IF INSTR( x , '¼' ) THEN SET TextString = REPLACE(TextString, '¼','¼') ; END IF ; #fraction 1/2 IF INSTR( x , '½' ) THEN SET TextString = REPLACE(TextString, '½','½') ; END IF ; #fraction 3/4 IF INSTR( x , '¾' ) THEN SET TextString = REPLACE(TextString, '¾','¾') ; END IF ; #inverted question mark IF INSTR( x , '¿' ) THEN SET TextString = REPLACE(TextString, '¿','¿') ; END IF ; #multiplication IF INSTR( x , '×' ) THEN SET TextString = REPLACE(TextString, '×','×') ; END IF ; #division IF INSTR( x , '÷' ) THEN SET TextString = REPLACE(TextString, '÷','÷') ; END IF ; #capital a, grave accent IF INSTR( x , 'À' ) THEN SET TextString = REPLACE(TextString, 'À','À') ; END IF ; #capital a, acute accent IF INSTR( x , 'Á' ) THEN SET TextString = REPLACE(TextString, 'Á','Á') ; END IF ; #capital a, circumflex accent IF INSTR( x , 'Â' ) THEN SET TextString = REPLACE(TextString, 'Â','Â') ; END IF ; #capital a, tilde IF INSTR( x , 'Ã' ) THEN SET TextString = REPLACE(TextString, 'Ã','Ã') ; END IF ; #capital a, umlaut mark IF INSTR( x , 'Ä' ) THEN SET TextString = REPLACE(TextString, 'Ä','Ä') ; END IF ; #capital a, ring IF INSTR( x , 'Å' ) THEN SET TextString = REPLACE(TextString, 'Å','Å') ; END IF ; #capital ae IF INSTR( x , 'Æ' ) THEN SET TextString = REPLACE(TextString, 'Æ','Æ') ; END IF ; #capital c, cedilla IF INSTR( x , 'Ç' ) THEN SET TextString = REPLACE(TextString, 'Ç','Ç') ; END IF ; #capital e, grave accent IF INSTR( x , 'È' ) THEN SET TextString = REPLACE(TextString, 'È','È') ; END IF ; #capital e, acute accent IF INSTR( x , 'É' ) THEN SET TextString = REPLACE(TextString, 'É','É') ; END IF ; #capital e, circumflex accent IF INSTR( x , 'Ê' ) THEN SET TextString = REPLACE(TextString, 'Ê','Ê') ; END IF ; #capital e, umlaut mark IF INSTR( x , 'Ë' ) THEN SET TextString = REPLACE(TextString, 'Ë','Ë') ; END IF ; #capital i, grave accent IF INSTR( x , 'Ì' ) THEN SET TextString = REPLACE(TextString, 'Ì','Ì') ; END IF ; #capital i, acute accent IF INSTR( x , 'Í' ) THEN SET TextString = REPLACE(TextString, 'Í','Í') ; END IF ; #capital i, circumflex accent IF INSTR( x , 'Î' ) THEN SET TextString = REPLACE(TextString, 'Î','Î') ; END IF ; #capital i, umlaut mark IF INSTR( x , 'Ï' ) THEN SET TextString = REPLACE(TextString, 'Ï','Ï') ; END IF ; #capital eth, Icelandic IF INSTR( x , 'Ð' ) THEN SET TextString = REPLACE(TextString, 'Ð','Ð') ; END IF ; #capital n, tilde IF INSTR( x , 'Ñ' ) THEN SET TextString = REPLACE(TextString, 'Ñ','Ñ') ; END IF ; #capital o, grave accent IF INSTR( x , 'Ò' ) THEN SET TextString = REPLACE(TextString, 'Ò','Ò') ; END IF ; #capital o, acute accent IF INSTR( x , 'Ó' ) THEN SET TextString = REPLACE(TextString, 'Ó','Ó') ; END IF ; #capital o, circumflex accent IF INSTR( x , 'Ô' ) THEN SET TextString = REPLACE(TextString, 'Ô','Ô') ; END IF ; #capital o, tilde IF INSTR( x , 'Õ' ) THEN SET TextString = REPLACE(TextString, 'Õ','Õ') ; END IF ; #capital o, umlaut mark IF INSTR( x , 'Ö' ) THEN SET TextString = REPLACE(TextString, 'Ö','Ö') ; END IF ; #capital o, slash IF INSTR( x , 'Ø' ) THEN SET TextString = REPLACE(TextString, 'Ø','Ø') ; END IF ; #capital u, grave accent IF INSTR( x , 'Ù' ) THEN SET TextString = REPLACE(TextString, 'Ù','Ù') ; END IF ; #capital u, acute accent IF INSTR( x , 'Ú' ) THEN SET TextString = REPLACE(TextString, 'Ú','Ú') ; END IF ; #capital u, circumflex accent IF INSTR( x , 'Û' ) THEN SET TextString = REPLACE(TextString, 'Û','Û') ; END IF ; #capital u, umlaut mark IF INSTR( x , 'Ü' ) THEN SET TextString = REPLACE(TextString, 'Ü','Ü') ; END IF ; #capital y, acute accent IF INSTR( x , 'Ý' ) THEN SET TextString = REPLACE(TextString, 'Ý','Ý') ; END IF ; #capital THORN, Icelandic IF INSTR( x , 'Þ' ) THEN SET TextString = REPLACE(TextString, 'Þ','Þ') ; END IF ; #small sharp s, German IF INSTR( x , 'ß' ) THEN SET TextString = REPLACE(TextString, 'ß','ß') ; END IF ; #small a, grave accent IF INSTR( x , 'à' ) THEN SET TextString = REPLACE(TextString, 'à','à') ; END IF ; #small a, acute accent IF INSTR( x , 'á' ) THEN SET TextString = REPLACE(TextString, 'á','á') ; END IF ; #small a, circumflex accent IF INSTR( x , 'â' ) THEN SET TextString = REPLACE(TextString, 'â','â') ; END IF ; #small a, tilde IF INSTR( x , 'ã' ) THEN SET TextString = REPLACE(TextString, 'ã','ã') ; END IF ; #small a, umlaut mark IF INSTR( x , 'ä' ) THEN SET TextString = REPLACE(TextString, 'ä','ä') ; END IF ; #small a, ring IF INSTR( x , 'å' ) THEN SET TextString = REPLACE(TextString, 'å','å') ; END IF ; #small ae IF INSTR( x , 'æ' ) THEN SET TextString = REPLACE(TextString, 'æ','æ') ; END IF ; #small c, cedilla IF INSTR( x , 'ç' ) THEN SET TextString = REPLACE(TextString, 'ç','ç') ; END IF ; #small e, grave accent IF INSTR( x , 'è' ) THEN SET TextString = REPLACE(TextString, 'è','è') ; END IF ; #small e, acute accent IF INSTR( x , 'é' ) THEN SET TextString = REPLACE(TextString, 'é','é') ; END IF ; #small e, circumflex accent IF INSTR( x , 'ê' ) THEN SET TextString = REPLACE(TextString, 'ê','ê') ; END IF ; #small e, umlaut mark IF INSTR( x , 'ë' ) THEN SET TextString = REPLACE(TextString, 'ë','ë') ; END IF ; #small i, grave accent IF INSTR( x , 'ì' ) THEN SET TextString = REPLACE(TextString, 'ì','ì') ; END IF ; #small i, acute accent IF INSTR( x , 'í' ) THEN SET TextString = REPLACE(TextString, 'í','í') ; END IF ; #small i, circumflex accent IF INSTR( x , 'î' ) THEN SET TextString = REPLACE(TextString, 'î','î') ; END IF ; #small i, umlaut mark IF INSTR( x , 'ï' ) THEN SET TextString = REPLACE(TextString, 'ï','ï') ; END IF ; #small eth, Icelandic IF INSTR( x , 'ð' ) THEN SET TextString = REPLACE(TextString, 'ð','ð') ; END IF ; #small n, tilde IF INSTR( x , 'ñ' ) THEN SET TextString = REPLACE(TextString, 'ñ','ñ') ; END IF ; #small o, grave accent IF INSTR( x , 'ò' ) THEN SET TextString = REPLACE(TextString, 'ò','ò') ; END IF ; #small o, acute accent IF INSTR( x , 'ó' ) THEN SET TextString = REPLACE(TextString, 'ó','ó') ; END IF ; #small o, circumflex accent IF INSTR( x , 'ô' ) THEN SET TextString = REPLACE(TextString, 'ô','ô') ; END IF ; #small o, tilde IF INSTR( x , 'õ' ) THEN SET TextString = REPLACE(TextString, 'õ','õ') ; END IF ; #small o, umlaut mark IF INSTR( x , 'ö' ) THEN SET TextString = REPLACE(TextString, 'ö','ö') ; END IF ; #small o, slash IF INSTR( x , 'ø' ) THEN SET TextString = REPLACE(TextString, 'ø','ø') ; END IF ; #small u, grave accent IF INSTR( x , 'ù' ) THEN SET TextString = REPLACE(TextString, 'ù','ù') ; END IF ; #small u, acute accent IF INSTR( x , 'ú' ) THEN SET TextString = REPLACE(TextString, 'ú','ú') ; END IF ; #small u, circumflex accent IF INSTR( x , 'û' ) THEN SET TextString = REPLACE(TextString, 'û','û') ; END IF ; #small u, umlaut mark IF INSTR( x , 'ü' ) THEN SET TextString = REPLACE(TextString, 'ü','ü') ; END IF ; #small y, acute accent IF INSTR( x , 'ý' ) THEN SET TextString = REPLACE(TextString, 'ý','ý') ; END IF ; #small thorn, Icelandic IF INSTR( x , 'þ' ) THEN SET TextString = REPLACE(TextString, 'þ','þ') ; END IF ; #small y, umlaut mark IF INSTR( x , 'ÿ' ) THEN SET TextString = REPLACE(TextString, 'ÿ','ÿ') ; END IF ; RETURN TextString ; END$$ DELIMITER ;Não é uma função otimizada, nem tem como, pois o objetivo de bancos de dados não é processar textos e, por isso, fornecem poucas funções e métodos nativos para tal. Mas já ajudou muito, porém meu problema era me livrar das entidades, dos caracteres especiais e remover os acentos, então fiz algumas alterações nessa função e ficou assim:
DELIMITER $$ DROP FUNCTION IF EXISTS `html_unencode`$$ CREATE DEFINER=`root`@`localhost` FUNCTION `html_unencode`(x VARCHAR(255)) RETURNS varchar(255) CHARSET latin1 BEGIN DECLARE TextString VARCHAR(255) ; SET TextString = x ; #quotation mark IF INSTR( x , '"' ) THEN SET TextString = REPLACE(TextString, '"','') ; END IF ; #apostrophe IF INSTR( x , ''' ) THEN SET TextString = REPLACE(TextString, ''','') ; END IF ; #ampersand IF INSTR( x , '&' ) THEN SET TextString = REPLACE(TextString, '&','') ; END IF ; #less-than IF INSTR( x , '<' ) THEN SET TextString = REPLACE(TextString, '<','') ; END IF ; #greater-than IF INSTR( x , '>' ) THEN SET TextString = REPLACE(TextString, '>','') ; END IF ; #non-breaking space IF INSTR( x , ' ' ) THEN SET TextString = REPLACE(TextString, ' ','') ; END IF ; #inverted exclamation mark IF INSTR( x , '¡' ) THEN SET TextString = REPLACE(TextString, '¡','') ; END IF ; #cent IF INSTR( x , '¢' ) THEN SET TextString = REPLACE(TextString, '¢','') ; END IF ; #pound IF INSTR( x , '£' ) THEN SET TextString = REPLACE(TextString, '£','') ; END IF ; #currency IF INSTR( x , '¤' ) THEN SET TextString = REPLACE(TextString, '¤','') ; END IF ; #yen IF INSTR( x , '¥' ) THEN SET TextString = REPLACE(TextString, '¥','') ; END IF ; #broken vertical bar IF INSTR( x , '¦' ) THEN SET TextString = REPLACE(TextString, '¦','') ; END IF ; #section IF INSTR( x , '§' ) THEN SET TextString = REPLACE(TextString, '§','') ; END IF ; #spacing diaeresis IF INSTR( x , '¨' ) THEN SET TextString = REPLACE(TextString, '¨','') ; END IF ; #copyright IF INSTR( x , '©' ) THEN SET TextString = REPLACE(TextString, '©','') ; END IF ; #feminine ordinal indicator IF INSTR( x , 'ª' ) THEN SET TextString = REPLACE(TextString, 'ª','') ; END IF ; #angle quotation mark (left) IF INSTR( x , '«' ) THEN SET TextString = REPLACE(TextString, '«','') ; END IF ; #negation IF INSTR( x , '¬' ) THEN SET TextString = REPLACE(TextString, '¬','') ; END IF ; #soft hyphen IF INSTR( x , '­' ) THEN SET TextString = REPLACE(TextString, '­','') ; END IF ; #registered trademark IF INSTR( x , '®' ) THEN SET TextString = REPLACE(TextString, '®','') ; END IF ; #spacing macron IF INSTR( x , '¯' ) THEN SET TextString = REPLACE(TextString, '¯','') ; END IF ; #degree IF INSTR( x , '°' ) THEN SET TextString = REPLACE(TextString, '°','') ; END IF ; #plus-or-minus IF INSTR( x , '±' ) THEN SET TextString = REPLACE(TextString, '±','') ; END IF ; #superscript 2 IF INSTR( x , '²' ) THEN SET TextString = REPLACE(TextString, '²','') ; END IF ; #superscript 3 IF INSTR( x , '³' ) THEN SET TextString = REPLACE(TextString, '³','') ; END IF ; #spacing acute IF INSTR( x , '´' ) THEN SET TextString = REPLACE(TextString, '´','') ; END IF ; #micro IF INSTR( x , 'µ' ) THEN SET TextString = REPLACE(TextString, 'µ','') ; END IF ; #paragraph IF INSTR( x , '¶' ) THEN SET TextString = REPLACE(TextString, '¶','') ; END IF ; #middle dot IF INSTR( x , '·' ) THEN SET TextString = REPLACE(TextString, '·','') ; END IF ; #spacing cedilla IF INSTR( x , '¸' ) THEN SET TextString = REPLACE(TextString, '¸','') ; END IF ; #superscript 1 IF INSTR( x , '¹' ) THEN SET TextString = REPLACE(TextString, '¹','') ; END IF ; #masculine ordinal indicator IF INSTR( x , 'º' ) THEN SET TextString = REPLACE(TextString, 'º','') ; END IF ; #angle quotation mark (right) IF INSTR( x , '»' ) THEN SET TextString = REPLACE(TextString, '»','') ; END IF ; #fraction 1/4 IF INSTR( x , '¼' ) THEN SET TextString = REPLACE(TextString, '¼','') ; END IF ; #fraction 1/2 IF INSTR( x , '½' ) THEN SET TextString = REPLACE(TextString, '½','') ; END IF ; #fraction 3/4 IF INSTR( x , '¾' ) THEN SET TextString = REPLACE(TextString, '¾','') ; END IF ; #inverted question mark IF INSTR( x , '¿' ) THEN SET TextString = REPLACE(TextString, '¿','') ; END IF ; #multiplication IF INSTR( x , '×' ) THEN SET TextString = REPLACE(TextString, '×','') ; END IF ; #division IF INSTR( x , '÷' ) THEN SET TextString = REPLACE(TextString, '÷','') ; END IF ; #capital a, grave accent IF INSTR( x , 'À' ) THEN SET TextString = REPLACE(TextString, 'À','a') ; END IF ; #capital a, acute accent IF INSTR( x , 'Á' ) THEN SET TextString = REPLACE(TextString, 'Á','a') ; END IF ; #capital a, circumflex accent IF INSTR( x , 'Â' ) THEN SET TextString = REPLACE(TextString, 'Â','a') ; END IF ; #capital a, tilde IF INSTR( x , 'Ã' ) THEN SET TextString = REPLACE(TextString, 'Ã','a') ; END IF ; #capital a, umlaut mark IF INSTR( x , 'Ä' ) THEN SET TextString = REPLACE(TextString, 'Ä','a') ; END IF ; #capital a, ring IF INSTR( x , 'Å' ) THEN SET TextString = REPLACE(TextString, 'Å','a') ; END IF ; #capital ae IF INSTR( x , 'Æ' ) THEN SET TextString = REPLACE(TextString, 'Æ','ae') ; END IF ; #capital c, cedilla IF INSTR( x , 'Ç' ) THEN SET TextString = REPLACE(TextString, 'Ç','c') ; END IF ; #capital e, grave accent IF INSTR( x , 'È' ) THEN SET TextString = REPLACE(TextString, 'È','e') ; END IF ; #capital e, acute accent IF INSTR( x , 'É' ) THEN SET TextString = REPLACE(TextString, 'É','e') ; END IF ; #capital e, circumflex accent IF INSTR( x , 'Ê' ) THEN SET TextString = REPLACE(TextString, 'Ê','e') ; END IF ; #capital e, umlaut mark IF INSTR( x , 'Ë' ) THEN SET TextString = REPLACE(TextString, 'Ë','e') ; END IF ; #capital i, grave accent IF INSTR( x , 'Ì' ) THEN SET TextString = REPLACE(TextString, 'Ì','i') ; END IF ; #capital i, acute accent IF INSTR( x , 'Í' ) THEN SET TextString = REPLACE(TextString, 'Í','i') ; END IF ; #capital i, circumflex accent IF INSTR( x , 'Î' ) THEN SET TextString = REPLACE(TextString, 'Î','i') ; END IF ; #capital i, umlaut mark IF INSTR( x , 'Ï' ) THEN SET TextString = REPLACE(TextString, 'Ï','i') ; END IF ; #capital eth, Icelandic IF INSTR( x , 'Ð' ) THEN SET TextString = REPLACE(TextString, 'Ð','d') ; END IF ; #capital n, tilde IF INSTR( x , 'Ñ' ) THEN SET TextString = REPLACE(TextString, 'Ñ','n') ; END IF ; #capital o, grave accent IF INSTR( x , 'Ò' ) THEN SET TextString = REPLACE(TextString, 'Ò','o') ; END IF ; #capital o, acute accent IF INSTR( x , 'Ó' ) THEN SET TextString = REPLACE(TextString, 'Ó','o') ; END IF ; #capital o, circumflex accent IF INSTR( x , 'Ô' ) THEN SET TextString = REPLACE(TextString, 'Ô','o') ; END IF ; #capital o, tilde IF INSTR( x , 'Õ' ) THEN SET TextString = REPLACE(TextString, 'Õ','o') ; END IF ; #capital o, umlaut mark IF INSTR( x , 'Ö' ) THEN SET TextString = REPLACE(TextString, 'Ö','o') ; END IF ; #capital o, slash IF INSTR( x , 'Ø' ) THEN SET TextString = REPLACE(TextString, 'Ø','o') ; END IF ; #capital u, grave accent IF INSTR( x , 'Ù' ) THEN SET TextString = REPLACE(TextString, 'Ù','u') ; END IF ; #capital u, acute accent IF INSTR( x , 'Ú' ) THEN SET TextString = REPLACE(TextString, 'Ú','u') ; END IF ; #capital u, circumflex accent IF INSTR( x , 'Û' ) THEN SET TextString = REPLACE(TextString, 'Û','u') ; END IF ; #capital u, umlaut mark IF INSTR( x , 'Ü' ) THEN SET TextString = REPLACE(TextString, 'Ü','u') ; END IF ; #capital y, acute accent IF INSTR( x , 'Ý' ) THEN SET TextString = REPLACE(TextString, 'Ý','y') ; END IF ; #capital THORN, Icelandic IF INSTR( x , 'Þ' ) THEN SET TextString = REPLACE(TextString, 'Þ','') ; END IF ; #small sharp s, German IF INSTR( x , 'ß' ) THEN SET TextString = REPLACE(TextString, 'ß','') ; END IF ; #small a, grave accent IF INSTR( x , 'à' ) THEN SET TextString = REPLACE(TextString, 'à','a') ; END IF ; #small a, acute accent IF INSTR( x , 'á' ) THEN SET TextString = REPLACE(TextString, 'á','a') ; END IF ; #small a, circumflex accent IF INSTR( x , 'â' ) THEN SET TextString = REPLACE(TextString, 'â','a') ; END IF ; #small a, tilde IF INSTR( x , 'ã' ) THEN SET TextString = REPLACE(TextString, 'ã','a') ; END IF ; #small a, umlaut mark IF INSTR( x , 'ä' ) THEN SET TextString = REPLACE(TextString, 'ä','a') ; END IF ; #small a, ring IF INSTR( x , 'å' ) THEN SET TextString = REPLACE(TextString, 'å','a') ; END IF ; #small ae IF INSTR( x , 'æ' ) THEN SET TextString = REPLACE(TextString, 'æ','ae') ; END IF ; #small c, cedilla IF INSTR( x , 'ç' ) THEN SET TextString = REPLACE(TextString, 'ç','c') ; END IF ; #small e, grave accent IF INSTR( x , 'è' ) THEN SET TextString = REPLACE(TextString, 'è','e') ; END IF ; #small e, acute accent IF INSTR( x , 'é' ) THEN SET TextString = REPLACE(TextString, 'é','e') ; END IF ; #small e, circumflex accent IF INSTR( x , 'ê' ) THEN SET TextString = REPLACE(TextString, 'ê','e') ; END IF ; #small e, umlaut mark IF INSTR( x , 'ë' ) THEN SET TextString = REPLACE(TextString, 'ë','e') ; END IF ; #small i, grave accent IF INSTR( x , 'ì' ) THEN SET TextString = REPLACE(TextString, 'ì','i') ; END IF ; #small i, acute accent IF INSTR( x , 'í' ) THEN SET TextString = REPLACE(TextString, 'í','i') ; END IF ; #small i, circumflex accent IF INSTR( x , 'î' ) THEN SET TextString = REPLACE(TextString, 'î','i') ; END IF ; #small i, umlaut mark IF INSTR( x , 'ï' ) THEN SET TextString = REPLACE(TextString, 'ï','i') ; END IF ; #small eth, Icelandic IF INSTR( x , 'ð' ) THEN SET TextString = REPLACE(TextString, 'ð','') ; END IF ; #small n, tilde IF INSTR( x , 'ñ' ) THEN SET TextString = REPLACE(TextString, 'ñ','n') ; END IF ; #small o, grave accent IF INSTR( x , 'ò' ) THEN SET TextString = REPLACE(TextString, 'ò','o') ; END IF ; #small o, acute accent IF INSTR( x , 'ó' ) THEN SET TextString = REPLACE(TextString, 'ó','o') ; END IF ; #small o, circumflex accent IF INSTR( x , 'ô' ) THEN SET TextString = REPLACE(TextString, 'ô','o') ; END IF ; #small o, tilde IF INSTR( x , 'õ' ) THEN SET TextString = REPLACE(TextString, 'õ','o') ; END IF ; #small o, umlaut mark IF INSTR( x , 'ö' ) THEN SET TextString = REPLACE(TextString, 'ö','o') ; END IF ; #small o, slash IF INSTR( x , 'ø' ) THEN SET TextString = REPLACE(TextString, 'ø','o') ; END IF ; #small u, grave accent IF INSTR( x , 'ù' ) THEN SET TextString = REPLACE(TextString, 'ù','u') ; END IF ; #small u, acute accent IF INSTR( x , 'ú' ) THEN SET TextString = REPLACE(TextString, 'ú','u') ; END IF ; #small u, circumflex accent IF INSTR( x , 'û' ) THEN SET TextString = REPLACE(TextString, 'û','u') ; END IF ; #small u, umlaut mark IF INSTR( x , 'ü' ) THEN SET TextString = REPLACE(TextString, 'ü','u') ; END IF ; #small y, acute accent IF INSTR( x , 'ý' ) THEN SET TextString = REPLACE(TextString, 'ý','y') ; END IF ; #small thorn, Icelandic IF INSTR( x , 'þ' ) THEN SET TextString = REPLACE(TextString, 'þ','') ; END IF ; #small y, umlaut mark IF INSTR( x , 'ÿ' ) THEN SET TextString = REPLACE(TextString, 'ÿ','y') ; END IF ; RETURN TextString ; END$$ DELIMITER ;
Depois é só utilizar o html_unencode em suas consultas como se fosse alguma função nativa, como lower, substr, etc. Um exemplo:
select html_unencode(titulo) from tabela_exemplo;
Hoje é só isso! ;)
Nenhum comentário:
Postar um comentário