Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如: SELECT t.empno,t.ename FROM scott.emp t WHERE t.deptno = 20; 但有的时候,从应用的需要或程序的编写出发,都可能需要用到动态SQl,如: 当 from 后的表 不确定时,或者where 后的条件不确定时,都需要用到动态SQL。
年前从深圳这边的公司离职了,然后回西安上周五新入职的新公司。然后入职的第一个任务居然是优化SQL。
有如下两条SQL,
select sum(silvers_num) from tb_video_cost_log where anchor_id = 205690298267862016 and consume_scene = 1;
select sum(silvers_num) from tb_video_cost_log where anchor_id = 205690298267862016
年前从深圳这边的公司离职了,然后回西安上周五新入职的新公司。然后入职的第一个任务居然是优化SQL。
有如下两条SQL,
select sum(silvers_num) from tb_video_cost_log where anchor_id = 205690298267862016 and consume_scene = 1;
select sum(silvers_num) from tb_video_cost_log where anchor_id = 205690298267862016
刚毕业的我们,都以为使用 MySQL 是非常的简单的,无非都是照着 【select from where group by order by】 这个格式套来套去;从来不会关注 SQL 的耗费时长,更不会关注查询的性能。
但是当用户量上来了,表数据不断暴增,导致我们以前写的 SQL 的查询时间越来越长,最后还被 DBA 和领导疯狂吐槽一波。那么,此时我们是不是应该学习一下如何去优化我们的烂 SQL 呢?
下面,我将从多方面去深入讲解如何优化 SQL 。
一、索引优化
索引的数据结构是 B+Tree