选择行时的奇怪结果

Posted

技术标签:

【中文标题】选择行时的奇怪结果【英文标题】:Weird result at selecting rows 【发布时间】:2011-03-06 20:23:22 【问题描述】:

我一直在琢磨为什么这个查询会返回这个结果:

SELECT direccion_principal
FROM tb_dysport_contacto_medico_terapeutica
WHERE direccion_principal LIKE '%Ú%'

结果:

+---------------------+
| direccion_principal |
+---------------------+
| COLSANITAS          |
+---------------------+

表格排序规则是utf8_general_ci

【问题讨论】:

【参考方案1】:

这部分查询:

LIKE '%Ú%'

正在尝试选择带有重音字符的结果。 utf8_general_ci 排序规则去除重音:What are the diffrences between utf8_general_ci and utf8_unicode_ci?

【讨论】:

【参考方案2】:

在查询之前,指出客户端将使用什么字符集向服务器发送 SQL 语句:

SET NAMES 'utf8';

【讨论】:

【参考方案3】:
SELECT direccion_principal
FROM tb_dysport_contacto_medico_terapeutica
WHERE direccion_principal LIKE '%Ú%' collate utf8_bin

但这也使它区分大小写。

【讨论】:

以上是关于选择行时的奇怪结果的主要内容,如果未能解决你的问题,请参考以下文章

奇怪的 UIKit 错误,表格视图行保持选中状态

在 Swift 中选择行时删除标签背景颜色

ExtJS:日期字段在选择网格行时显示为空白

Android - 相机和画廊意图后的裁剪给出了奇怪的结果

WPF:DataGrid.RowDetailsTemplate:仅在选择单行时显示详细信息?

LINQ 查询结果中的奇怪值