在一次功能实现的时候,有一个需求是需要对学生的证件号做一个大小写字母的区分查询。但是mysql在做普通查询的时候,是不区分大小写的,默认A等同于a,这样会导致查询的结果无法达到效果。
后来通过查询资料发现可以通过binary关键字,来实现大小写区分。有两种方式:
1、在查询语句中添加binary关键字,如下:
select * from ksxx where binary sfzjhm like '%A%';
2、在新建表的时候,对关联字段加binary标识,如下:
create table ksxx(
id varchar(64),
xm varchar(64),
sfzjhm varchar(18) binary,
PRIMARY KEY(id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;