我有一张这样的表:
name
Smith
Smith
Perez
Pérez
我想消除像史密斯这样的重复,但同时保留佩雷斯和佩雷斯(e和é)。 如果我使用'分组'我会得到两排(史密斯和两个佩雷斯/佩雷斯之一),但我想得到三排(史密斯,佩雷斯,佩雷斯)。 Sjögren和Sjogren等也是如此。 感谢
答案 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
- 它使用更准确的比较算法。