Ö(带双点的O)在Mysql记录中?

时间:2009-11-14 23:41:18

标签: mysql sql

我在MySQL表中有一行“ö”。整个词是“företag”。

如何在SQL查询中选择该单词?

我尝试过företag,但它没有用。该表使用的是utf8。

4 个答案:

答案 0 :(得分:2)

您可以使用:

SELECT * FROM table WHERE field LIKE 'f_retag';

('_'是LIKE语句的单字符通配符)

如果您使用的是终端,请确保终端使用的是UTF-8。尝试:

 echo $LANG

在启动mysql命令时也尝试强制字符集:

 mysql --default-character-set=utf-8

否则,请详细说明您用于访问数据库的语言和环境。

答案 1 :(得分:2)

您还可以在运行select之前尝试运行以下查询:

SET CHARACTER SET utf8;

刚刚在我的本地MySQL上测试过它(该表是用UTF8 charset创建的):

mysql> select * from xxx where s='företag';
+----------+
| s        |
+----------+
| företag |
+----------+
1 row in set (0.00 sec)

答案 2 :(得分:1)

试试这个

declare @tbl table(name varchar(50))
insert into @tbl select 'företag' union all select 'foretag'

SELECT * FROM @tbl WHERE name = 'företag';

SELECT * FROM @tbl WHERE name like '%ö%';

答案 3 :(得分:0)

在Unicode中编写重音字符的方法不止一种。例如,“Ä”也可以写为“A \ u0308”。相关的Unicode文档是"Unicode Normalization Forms",但这并不容易阅读。