sql
Klose S
耐得住寂寞,才能守得住繁华
展开
-
mysql排序的几种方式
SELECT * from t_student ORDER BY age; SELECT * from t_student ORDER BY age,status; SELECT * from t_student ORDER BY FIELD(`status`,2,1,3); 。。。。。。 ...原创 2020-04-30 14:22:54 · 201 阅读 · 0 评论 -
索引失效的几种场景
like,右模糊 对索引列字段进行函数或类型转换等其他操作;主要包括:在索引列上使用内置函数、隐式类型转换、对列进行加减等数值运算 where语句中包含or时,可能会导致索引失效,除非or的列都加上了索引 联合索引,未遵循最左前缀原则 where语句中索引列使用了负向查询,可能会导致索引失效 ;!= , not in ... 走索引导致多次回表,查询优化器选择不走索引, is null 和 is not null 和查询优化器类似 567点 类似 都看where 后面的字段 不论正向反...原创 2021-10-19 20:29:50 · 173 阅读 · 0 评论 -
Mysql group_concat函数
SELECT t.communityName,t.pointName,GROUP_CONCAT(t.status ORDER BY recordDate),GROUP_CONCAT(t.recordDate ORDER BY recordDate)from (selectrecordDate,communityName,pointName,case attendPointStatuswhen '1' then '全勤'when '2' then '缺勤'else '旷工' end ...原创 2020-12-23 11:03:25 · 147 阅读 · 0 评论 -
Mysql索引底层原理分析
简介Mysql中Innodb引擎的索引的数据类型为Hash或者B+树,默认为B+树。叶子节点由双向指针连接页页是一种逻辑单位,一页可存储4kb数据。使用页——局部性原理局部性通常有两种形式:时间局部性(temporal locality)时间局部性指的是:被引用过一次的存储器位置在未来会被多次引用(通常在循环中)。空间局部性(spatial locality)...原创 2020-05-04 22:33:10 · 212 阅读 · 1 评论 -
case when then 结合 group by的使用
1.准备数据ddl:CREATE TABLE `t_staff` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `department` varchar(255) COLLATE utf8_unicode_ci DEFAULT ...原创 2020-04-14 09:13:08 · 2388 阅读 · 0 评论 -
sql 实现 数据库行转列
1.新建一张表CREATE TABLE `t_student` ( `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `subject` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `score` int(11) DEFAULT NULL) ENGINE=...原创 2019-11-27 17:23:23 · 164 阅读 · 1 评论