1、mysql默认不区分大小写,下面的SQL语句结果的等同的。
select * from some_table where binary str='abc';
select * from some_table where binary str='ABC';
2、mysql索引注意事项
b已存在索引,且是varchar类型:100万的表
SELECT * from a where b=1300593; -->不会触发索引,耗时>1秒
SELECT * from a where b='1300593';-->会触发索引,耗时<0.1秒
结论:varchar类型索引,搜索时不要用int类型(索引失效),因为它们完全是两种不同的比较方式。
varchar类型,索引长度有限,不能超过191个字符。
3、唯一索引
""会触发唯一索引,而null不会
4、in 关键字
where name in (...) -- 要求不能有null值,否则in失效
5、group时,怎么把id都统计出来
select GROUP_CONCAT(id) from user group by address; -- id会默认用逗号分隔