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

sql查询练习

例 34  找出年龄超过平均年龄的学生姓名。
SELECT SNAME
from STUDENTS
WHERE AGE >
      (SELECT  AVG(AGE)
        from   STUDENTS)
例 35  找出各课程的平均成绩,按课程号分组,且只选择学生超过 3 人的课程的成绩。( GROUP BY 与 HAVING
        GROUP BY 子句把一个表按某一指定列(或一些列)上的值相等的原则分组,然后再对每组数据进行规定的操作。
        GROUP BY 子句总是跟在 WHERE 子句后面,当 WHERE 子句缺省时,它跟在 from 子句后面。
        HAVING 子句常用于在计算出聚集之后对行的查询进行控制。)
         SELECT CNO, AVG(GRADE), STUDENTS = COUNT(*)
         from ENROLLS
         GROUP BY CNO
         HAVING COUNT(*) >= 3
 
相关子查询
 
例 37  查询没有选任何课程的学生的学号和姓名。(当一个子查询涉及到一个来自外部查询的列时,称为相关子查询( Correlated Subquery) 。相关子查询要用到存在测试谓词 EXISTS 和 NOT EXISTS ,以及 ALL 、 ANY ( SOME )等。)
        SELECT SNO, SNAME
        from   STUDENTS
        WHERE  NOT EXISTS
              (SELECT *
              from ENROLLS
              WHERE ENROLLS.SNO=STUDENTS.SNO)
例 38   查询哪些课程只有男生选读。
        SELECT DISTINCT CNAME
        from   COURSES C
        WHERE ' 男 ' = ALL


相关文档:

SQL嵌套子查询


      使用子查询的原则
      1.一个子查询必须放在圆括号中。
      2.将子查询放在比较条件的右边以增加可读性。
      子查询不包含 ORDER BY 子句。对一个 SELECT 语句只能用一个 ORDER BY 子句,
&nb ......

sql数据导入导出

大家打开这个链接可以看到很多数据库的连接方法。http://www.connectionstrings.com
这些数据库之间的数据交换就是这个贴子所要总结的内容。
(一)SQL Server之间
把远程数据库中的数据导入到本地数据库。
http://community.csdn.net/Expert/topic/5079/5079649.xml?temp=.7512018
http://community.csdn.net/Expert/ ......

SQL触发器 实例教学


        ... 
      )
     用到的功能有: 
        1.如果我更改了学生的学号,我希望他的借书记录仍然与这个学生相关(也就是同时更改借书记录表的学号); 
        2.如果该学生已经 ......

ORACLE SQL语句优化


1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE的解析器按照从右到左的顺序处理from子句中的表名,from子句中写在最后的表(基础表 driving table)将被最先处理,在from子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号