- 浏览: 8422 次
- 性别:
- 来自: 济南
最新评论
文章列表
表xx: month_id, user_id, service_id ,acct_fee
表yy: month_id, service_id
sql:
select a.*,b.* from xx a left outer join yy b
on a.month_id=b.month_id and a.service_id=b.service_id and a.month_id='201203'
where a.month_id='201203'
sql分析:
1、根据on后面的条件进行a、b表的左关联
(此时结果集中会有a中所有的数据,只是不满足on后条件的不进行关联,但不满足on后条 ...
如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS)。
在这里,我不打算介绍使用SQL Server的窍 ...
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享!
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE 的解析器按照从右到左的顺序处理FROM子句 ...
获取表名称:
select table_name from user_tables; //获取当前用户的表
select table_name from all_tables; //获取所有用户的表
select table_name from dba_tables; //获取包括系统表在内的所有表
select table_name from dba_tables where owner='用户名' //获取某用户下的所有表
以上各表表结构
user_tables:
table_name,tablespace_name,last_analyzed等
dba_ ...
一、问题的提出
在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其功能就可,而是要写出高质量的SQL语句,提高系统的可用性。
在多数情况下,Oracle使用索引来更快地遍历表,优化器主要根据定义的索引来提高性能。但是,如果在SQL语句的where子句 ...