Yojo网页设计

yojoPHP.NETPhotoshopCSSaSPPhotoshopDreamweaverFlashFireworksCoreldrawillustratorJSPSEOSQL
·ASP基础·ASP技巧·ASP实例·Asp.Net基础·Asp.Net技巧·Asp.Net实例·PHP·JSP·编程杂谈·数据库编程

热门点击

more...
您现在的位置: yojo网页设计 >> 编程开发 >> 数据库编程 >> 正文

SQL的简单查询

更新时间:2007-11-19 23:36:03 文章来源:互联网 点击:

   1. 选择表中的若干列 
    (1)查询指定列

    例5 查询全体学生的学号与姓名
        SELECT Sno,Sname FROM Student;
    <目标列表达式> 中各个列的先后顺序可以与表中的顺序不一致。也就是说,用户在查询时可以根据应用的需要改变列的显示顺序。

    例6 查询全体学生的姓名、学号、所在系
      SELECT Sname, Sno, Sdept FROM Student;
    结果表中的列的顺序与基表中不同,是按查询要求,先列出姓名属性,然后再列学号属性和所在系属性。

    (2)查询全部列
    例7 查询全体学生的详细记录
      SELECT *  FROM Student;
    该SELECT语句实际上是无条件地把Student表的全部信息都查询出来,所以也称为全表查询,这是最简单的一种查询。

    (3)查询经过计算的值
    SELECT子句的<目标列表达式>不仅可以是表中的属性列,也可以是有关表达式,即可以将查询出来的属性列经过一定的计算后列出结果。 
    例8 查询全体学生的姓名及其出生年份
      SELECT Sname, 2004-Sage FROM Student;
    本例中,<目标列表达式>中第二项不是通常的列名,而是一个计算表达式,是用当前的年份(假设为2004年)减去学生的年龄,这样,所得的即是学生的出身年份。输出的结果为: 
      Sname   
      ------  ----------
      李勇    1976
      刘晨    1977
      王名    1978
      张立    1978
    不仅可以是算术表达式,还可以是字符串常量、函数等。


    例9 查询全体学生的姓名、出生年份和所有系
      SELECT Sname, 'Year of Birth:', 2004-Sage  出生年份   FROM  Student;
    结果为: 
      Sname                     出生年份    
      ------ -------------------------    
      李勇  Year of Birth:    1976  
      刘晨  Year of Birth:    1977    
      王名  Year of Birth:    1978    
      张立  Year of Birth:    1978    
      用户可以通过指定别名来改变查询结果的列标题,这对于含算术表达式、常量、函数名的目标列表达式尤为有用。

    2.选择表中的若干元组 
    (1)消除取值重复的行
    例10 查询所有选修过课的学生的学号
      SELECT Sno FROM SC; 


    假设SC表中有下列数据 
       Sno      Cno    Grade
      ------- ------- ------- 
      95001      1       92
      95001      2       85 
      95001      3       88 
      95002      2       90 
      95002      3       80   
    执行上面的SELECT语句后,结果为:
      Sno 
    ------- 


     95001 
     95001
     95001 
     95002 
     95002 
    该查询结果里包含了许多重复的行。如果想去掉结果表中的重复行,必须指定DISTINCT短语:
    SELECT DISTINCT Sno FROM SC;  
    执行结果为: 
      Sno 
    ------- 
     95001 
     95002 

    (2)查询满足条件的元组
    查询满足指定条件的元组可以通过WHERE子句实现。WHERE子句常用的查询条件如表3-3所示。 
     常用的查询条件
    查询条件                      谓 词


    ───────     ───────────────
    比较(比较运算符)    = 、>、>=、<、<=、<>(!=)、NOT
    确定范围           BETWEEN AND, NOT BETWEEN AND
    确定集合           IN, NOT IN
    字符匹配           LIKE, NOT LIKE
    空值               IS NULL, IS NOT NULL
    多重条件           AND, OR

    ①比较大小
    例11 查询计算机系全体学生的名单
    SELECT Sname FROM Student WHERE Sdept = '计算机系'; 

    例12 查询所有年龄在20岁以下的学生姓名及其年龄
    SELECT Sname, Sage FROM Student WHERE Sage <20; 
    或  SELECT Sname, Sage  FROM Student WHERE NOT Sage>= 20; 

    例13查询考试成绩有不及格的学生的学号
    SELECT DISTINCT Sno FROM Course WHERE Grade <60; 
    这里使用了DISTINCT短语,当一个学生有多门课程不及格,他的学号也只列一次。

[1] [2] 下一页


文章地址:http://www.518web.net/bckf/dbbc/15029.html

友情链接首页文字链接要求:PR≥3,搜索引擎正常收录,开通一年以上,内容健康充实的站点!申请...

Copyright(C) 2005-2008 518web.net,All Rights Reserve
Email:yojo.x@msn.com | 在线QQ:2306380 53614197| [浙ICP备08009643号]