易截截图软件、单文件、免安装、纯绿色、仅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 Server里sp_helptext输出格式错行问题

use Master 
go 
if object_id('SP_SQL') is not null 
  drop proc SP_SQL 
go 
create proc [dbo].[SP_SQL](@ObjectName sysname) 
as 
set nocount on ; 
declare @Print varchar(max) 
if exists(select 1 from syscomments  where ID=objec ......

SQL/PLUS



4.数据类型转换函数
   ●隐式转换
     赋值时可进行的隐式转换有
       VARCHAR2或CHAR —〉NUMBER
       VARCHAR2或CHAR —〉DATE
       NUMBER —〉VARCHAR ......

循序渐进讲解SQL查询语句高级应用技巧

一、 简单查询
简单的Transact-SQL查询只包括选择列表、from子句和WHERE子句。它们分别说明所查询列、查询的
表或视图、以及搜索条件等。
例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。
SELECT nickname,email
from testtable
WHERE name='张三'
 
(一) 选择 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号