MySQL:' group by'不失标记

时间:2014-03-13 11:23:39

标签: mysql sql

我有一张这样的表:

name
Smith
Smith
Perez
Pérez

我想消除像史密斯这样的重复,但同时保留佩雷斯和佩雷斯(e和é)。 如果我使用'分组'我会得到两排(史密斯和两个佩雷斯/佩雷斯之一),但我想得到三排(史密斯,佩雷斯,佩雷斯)。 Sjögren和Sjogren等也是如此。 感谢

2 个答案:

答案 0 :(得分:1)

1)首先检查你的表是否有使用

的utf8字符集编码
select table_name,engine 
from information_schema.tables
where table_schema = 'your_database'

2)其次,如果不是(否则跳到第3步),改变你的表(utf8字符集编码,所以它将支持特殊字符)

ALTER TABLE `name` CHARACTER SET utf8;

3)使用utf8 charset从数据库中选择

select * from your_table group by name collate utf8_general_ci

答案 1 :(得分:1)

尝试使用utf8_unicode_ci而不是utf8_general_ci - 它使用更准确的比较算法。