易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL中逻辑查询处理的各个阶段

 有关SQL中逻辑查询处理的各个阶段(自己搞的例子,不对的欢迎指正哦)
SQL不同于其他的编程语言的最大最大特征有3个吧,
一个是它是面向集合的编程思想,第二个是三值逻辑(这个后面会说到),还有一个就是今天主要要说的查询元素的逻辑处理次序。
请看一个基本查询的逻辑过程:
(8)  SELECT (9) DISTINCT (11) <TOP_specification> <select_list>
(1)  from <left_table>
(3)    <join_type> JOIN <right_table>
(2)      ON <join_condition>
(4)  WHERE <where_condition>
(5)  GROUP BY <group_by_list>
(6)  WITH {CUBE | ROLLUP}
(7)  HAVING <having_condition>
(10) ORDER BY <order_by_list>
大家可以看到 这里的运行步骤不是像一般的编程 一句句从上往下 它是跳动的 有活力的
这里提前说下 每一步都会产生一个虚拟的表(也可能是游标,下面会提到),作为下一个步骤的输入。大家最后看到的结果其实就是最后一个虚拟表了。
好了,下面我开始具体阐释每个步骤:
测试环境:
--题目要求:求出学生最低科目成绩不低于90分且年龄在7岁以上的学生姓名
create table #student(s# int,sname varchar(10),age int)
create table #study (s# int, c# char(1),score int)
insert #student
1,'xiaozhu',10 union all select
2,'xiaomao' ,9union all select
3,'xiaozhe' ,7union all select
4,'xiaophai',8 union all select
5,'xiaoduo',9
insert #study select
1,'A',99 union all select
1,'B',90 union all select
1,'C',99 union all select
2,'A',99 union all select
2,'b',99 union all select
2,'c',98 union all select
3,'A',99 union all select
3,'b',92 union all select
3,'c',91 union all select
3,'d',90 union all select
4,'A',88 union all select
4,'B',96
--SQL语句
select top 1 sname,MIN(score) as minsocre
from #student s left outer join #study sc
on s.s#=sc.s#
where age>7
group by sname
having MIN(score)>=90
order by minsocre
/*
sname      minsocre
---------- -----------
xiaozhu    90
*/
(1):执行笛卡尔积(CROSS JOIN )
大家这


相关文档:

SQL聚集索引和非聚集索引


微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)……
  (一)深入浅出理解索引结构
  实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称 ......

sql 2005

“工欲善其事,必先利其器”。信息技术在商业领域应用的卓越成效在经过近20年的信息化建设已经初步显现。企业通过MIS(管理信息系统)快速收集和处理商业信息,通过ERP(企业资源计划系统)准确监控信息流,从而对企业经营的各个方面进行管理。这些系统除了本身的应用外,还积累了大量的数据,如来自业务系统的订 ......

SQL SERVER 数据类型详解

 
数据类型
类型
描              述
bit
整型
bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off
int
整型
int 数据类型可以存储从- 231(-2147483648)到231 (21 ......

SQL UNION 和 UNION ALL 操作符

 SQL UNION 操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
SQL UNION 语法
SELECT column_name(s) from table_name1
UNION
SELECT column_name(s) from tabl ......

常用 sql语句

SQL插入语句得到自动生成的递增 ID 值
 insert  into  Table1(Name,des,num)  values  ('ltp','thisisbest',10);
select  @@identity  as  'Id'
随机提取条记录的例子
SQL  Server:Select  Top  10  *  from  Tablename  Order  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号