查询【最重要、难度最大】

  1. 计算列
  2. distinct
  3. between
  4. in
  5. top
  6. null
  7. order by
  8. 模糊查询
  9. 聚合函数
  10. group by
  11. having
  12. 连接查询(定义;分类:内链接、外连接、完全链接、交叉连接、自连接、联合)
  13. 嵌套连接
  • 计算列

  select ename,sal*12 as '年薪' from emp; -- 为了保证语句的可移植性,别名 年薪,一定要用双引号!

  注意:在Oracle中字段的别名不允许用单引号括起来,但是SqlServer 2005却允许,因此为了兼容性,最好字段别名都用双引号括起来。

  select 5 from emp;  --输出的行数与emp的行数相同,每行只有一个字段,值为5

  select 5;  --ok, 不推荐

  • distinct(可以过滤重复的null)

  select distinct deptno from emp; -- 输出不重复的部门编号

  select distinct comm,deptno from emp; -- 对comm和deptno的组合进行过滤

  select deptno,distinct comm from emp; -- 逻辑上冲突

  select ename,* from emp; -- error *已经包含了ename,逻辑错误

  • null

    isnull 是个函数,语法:isnull(check_value,replace_value),检查check_value是否为null,为null的话返回replace_value。

    select avg(isnull(price,10)) from list --将价格为null的书的价格改为10,然后计算平均价格。

posted @ 2012-10-20 22:18  xiaolongxia  阅读(100)  评论(0)    收藏  举报