SQL经典实例(第2版)
上QQ阅读APP看书,第一时间看更新

1.1 检索表中所有的行和列

  1. 问题

    你有一张表,你想查看表中的所有数据。

     

  2. 解决方案

    使用 SELECT 语句来查询表,并使用特殊字符 * 指定返回所有的列。

    1 select *
    2   from emp

     

  3. 讨论

    在 SQL 中,字符 * 有特殊含义,它会返回指定表中所有的列。由于没有指定 WHERE 子句,因此将返回所有的行。也可以分别列出每一列。

    select empno,ename,job,sal,mgr,hiredate,comm,deptno
      from emp

    在以交互方式执行的临时查询中,使用 SELECT * 更容易。不过,在编写程序代码时,分别指定各列更合适。这两种做法性能相同,但显式指定能让你知道查询将返回哪些列。同理,这种查询对其他人(他们可能知道也可能不知道查询的表中包含哪些列)来说更容易理解。对于代码中的查询,使用 SELECT * 会带来问题,因为查询返回的列可能不符合预期。不管怎样,指定所有列时,如果没有返回其中的一列或多列,则可以跟踪异常以确定缺失了哪些列。