mysql区分大小写搜索

form:http://www.uphtm.com/database/257.html

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

  1. col_name COLLATE latin1_general_cs LIKE ‘a%‘;
  2. col_name COLLATE latin1_general_cs LIKE ‘a%‘;
  3. col_name COLLATE latin1_bin LIKE ‘a%‘;
  4. col_name LIKE ‘a%‘ COLLATE latin1_bin;

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

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

form:http://www.uphtm.com

时间: 2024-10-14 06:18:43

mysql区分大小写搜索的相关文章

MySQL 全文搜索支持, mysql 5.6.4支持Innodb的全文检索和类memcache的nosql支持

背景:搞个个人博客的全文搜索得用like啥的,现在mysql版本号已经大于5.6.4了也就支持了innodb的全文搜索了,刚查了下目前版本号都到MySQL Community Server 5.6.19 了,所以,一些小的应用可以用它做全文搜索了,像sphinx和Lucene这样偏重的.需要配置或开发的,节省了成本. 这儿有一个原创的Mysql全文搜索的文章, mysql的全文搜索功能:http://blog.csdn.net/bravekingzhang/article/details/672

【转】 Mysql全文搜索match...against的用法

原文链接 http://blog.csdn.net/manbujingxin/article/details/6656992 前提:mysql只支持英文内容的全文索引,所以只考虑英文的全文搜索. 假定数据表名为post,有三列:id.title.content.id是自增长序号, title是varchar,content是text,给content添加全文索引.mysql全文搜索有三种模式:一.自然语言查找.这是mysql默认的全文搜索方式,sql示例: 1 select  id,title 

mysql 文本搜索

全文本搜索 MySQL支持几种基本的数据库引擎,但并非所有的引擎都支持全文本搜索.两个最常使用的引擎为MyISAM和InnoDB,前者支持全文本搜索,后者就不支持. 理解全文本搜索 在前面的学习中,我们都知道有两种方式来匹配文本.一种是使用like关键字来进行匹配,另外一种就是使用正则表达式来进行匹配. 虽然使用正则表达式就可以编写查找所需行的足够复杂的匹配模式.但是,这些存在几个重要的限制影响: 1.性能:通配符和正则表达式时尝试匹配表中所有行,而这些搜索极少使用了表索引,因此,相当慢 2.明

Mysql全文搜索match against的用法

全文检索在 MySQL 中就是一个 FULLTEXT 类型索引.FULLTEXT 索引用于 MyISAM 表,可以在 CREATE TABLE 时或之后使用 ALTER TABLE 或 CREATE INDEX 在 CHAR. VARCHAR 或 TEXT 列上创建 对于大的数据库,将数据装载到一个没有 FULLTEXT 索引的表中,然后再使用 ALTER TABLE   (或 CREATE INDEX) 创建索引,这将是非常快的.将数据装载到一个已经有 FULLTEXT 索引的表中,将是非常慢

MySQL 正则表达式搜索

products表如下: 1. 基本字符匹配 使用正则表达式与LIKE的区别,正则表达式是在整个列搜索,只要prod_name中包含了所搜索的字符就可以了,而LIKE如果不用通配符,那么要求prod_name与搜索的字符要完全匹配:也就是说下面的例子,需要使用 LIKE 'JetPack 1000'才可以适配搜索到. 2 使用or进行匹配搜索,可以搜索两个条件,也可以连接多个条件: 3 匹配几个字符之一://这个的意思是说,匹配1 Ton 或者 2 Ton 或者 3 Ton 但是如果写成下面这样

mysql 全文搜索(转载http://blog.csdn.net/manbujingxin/article/details/6656992)

前提:mysql只支持英文内容的全文索引,所以只考虑英文的全文搜索.假定数据表名为post,有三列:id.title.content.id是自增长序号,title是varchar,content是text,给content添加全文索引. mysql全文搜索有三种模式: 一.自然语言查找.这是mysql默认的全文搜索方式,sql示例: 1 select  id,title FROM post WHERE MATCH(content) AGAINST ('search keyword') 或者显式声

MYSQL区分大小写

MYSQL区分大小写   1.linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写: 2.用root帐号登录后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写: lower_case_table_names参数详解: lower_case_table_names = 0 其中 0:区分大小写,1:不区分大小写 MySQL在Linux下数据库名.表名.列名.别名大

MySQL 全文搜索支持

MySQL 全文搜索支持 从MySQL 4.0以上 myisam引擎就支持了full text search 全文搜索,在一般的小网站或者blog上可以使用这个特性支持搜索. 那么怎么使用了,简单看看: 1.创建一个表,指定支持fulltext的列 CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title,b

MySQL区分大小写的查询

mysql查询默认是不区分大小写的 如: select  * from  table_name where  a like  'a%' select  * from  table_name where  a like  'A%' select * from table_name where a like 'a%' select * from table_name where a like 'A%' 效果是一样的. 要让mysql查询区分大小写,可以: select  * from  table_