select……
from……
where……
group by ……having……
order by……
SQL执行计划
1.select……from……where…… =>结果集
2. group by …… 对分组结果进行分组
having…… 对分组结果进行过滤
3.order by 对结果集进行排序
语句执行层级
PreparedStatement (SQL)
excute (CPU)
fetch (return result) (IO)
<1> select * from emp;
<2> select count(*) from emp;
从数据库信息最终显示结果来说
<2> 快于 <1> Tsql+Tcpu+Tio
从cpu执行层面来说
<1> 快于 <2> (<1> 少执行了 count(*) 这一步 )
从IO层面来说
<2> 快于 <1> ( <1>要不断的查询,返回结果 )
null 值(表示未知,并不是空)
查找值为null的字段行
select * from emp where mg is null; 正确
select * from emp where mg = null; 错误
null == null false
null != null false
使用 is null , is not null
null的排序
select * from emp order by salary;
salary 字段为null 的行 排在 salary 有值 行 的下面。
Oracle 中的 select 语句如果 被 " " 包围 则该部分不通过语法检查。(类似于注释)