转换函数中的MYSQL语法错误

转换函数中的MYSQL语法错误,mysql,Mysql,我在MYSQL语法方面有一些问题 这句话是正确的 CONVERT(_latin1 'SOME-AR-TEXT' USING utf8)); 但我不需要'SOME-AR-TEXT'值,我需要某个变量的值 换句话说,我试着这么做 CONVERT(_latin1 (SELECT some_variable) USING utf8)); 但是控制台显示语法错误 我该怎么做才能得到某个变量的值呢 谢谢大家通过您的SQL FIDLE,您似乎想要转换每个字段。为什么不使用默认的拉丁字符集创建表呢?这样,您

我在MYSQL语法方面有一些问题

这句话是正确的

CONVERT(_latin1 'SOME-AR-TEXT' USING utf8));
但我不需要'SOME-AR-TEXT'值,我需要某个变量的值

换句话说,我试着这么做

CONVERT(_latin1 (SELECT some_variable) USING utf8));
但是控制台显示语法错误

我该怎么做才能得到某个变量的值呢


谢谢大家

通过您的SQL FIDLE,您似乎想要转换每个字段。为什么不使用默认的拉丁字符集创建表呢?这样,您就不必专门转换每个字段

SELECT CONVERT(some_variable USING UTF8) AS field_value
  FROM MyTable
CREATE TABLE IF NOT EXISTS `example` (
  `some_variable` varchar(30) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

而且术语也有问题。”某些变量实际上不是变量,而是数据库表示例中的列/字段。

您的SQL语法有错误;查看与MySQL服务器版本对应的手册,了解使用UTF8作为字段值的近'sub_关键字的正确语法,但我需要\u latin1:@EyadFarra您试图做的事情没有真正意义:首先将列数据转换为一个字符集,然后再转换为另一个字符集。这样做可以消除unicode的优势,实际上可以保证数据丢失。您使用的是什么字符集?显示MyTable中的完整列