核心知识点: 在mysql中,对于Column Collate(列的排序规则)其约定的命名方法如下:
*_bin: 标识的是binary case sensitive collation,也就是说是区分大小写的
*_cs: case sensitive collation,区分大小写
*_ci: case insensitive collation,不区分大小写
需求一: Mysql模糊查询需要区分大小写
方法一: 查询时,指定区分大小写: 在like后面加binary
select * from table_name where column_name like binary '%key_word%';
方法二: 在建表时,设置好区分大小写。
也可以设置某一列的Collate
create table test_bin (id varchar(100) PRIMARY KEY) CHARACTER SET=utf8 CLLATE=utf8_bin;
需求二:mysql模糊查询时不区分大小写。
方法一:查询时使用LOWER函数
select * from tablename where LOWER(column_name) like LOWER('keyword%');
方法二:在建表时,设置好不区分大小写。
create table test_ci (id varchar(100) PRIMARY KEY) CHARACTER SET =utf8 CLLATE=utf8_general_ci;