正确认识"MySQL"搜索中的大小写敏感性

上一篇 / 下一篇  2008-01-15 15:23:00 / 个人分类:学堂

 

在默认的情况下,MySQL搜索不区分大小写(但某些字符集始终区分大小写,如czech)。这意味着,如果你使用col_name LIKE ´a%´进行搜索,你将获得以A或a开始的所有列。如果打算使搜索区分大小写,请确保操作数之一具有区分大小写的或二进制校对。例如,如果你正在比较均适用latin1字符集的列和字符串,可使用COLLATE操作符,使1个操作数具有latin1_general_cs或latin1_bin校对特性。例如:

col_name COLLATE latin1_general_cs LIKE ´a%´
col_name LIKE ´a%´ COLLATE latin1_general_cs
col_name COLLATE latin1_bin LIKE ´a%´
col_name LIKE ´a%´ COLLATE latin1_bin

如果希望总是以区分大小写的方式处理列,可使用区分大小写的或二进制校对声明它。

简单的比较操作(>=, >, =, <, <=, 排序和分组)基于每个字符的“排序值”。具有相同排序值的字符(如‘E’, ‘e’,和‘é’)将被当作相同的写字符


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-08-14  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 2898
  • 日志数: 187
  • 建立时间: 2007-02-02
  • 更新时间: 2008-08-01

RSS订阅

Open Toolbar