表的概念:
Excel中的表格就是表。
表格中横着是一行,竖着叫一列.
表中也是一样,其中每列的头叫 字段名或者列名
简单查询:
语法: select * from 表名;
范例:select * from score;
select:关键字,意思是 查询
*:通配符, 代表表中所有的列
from:关键字, 可以理解为 从哪里
score:表名
select * from emp;
select * from dept;
语法: select 列名 from 表名;–查询单列的情况
select 列名1,列名2,列名3 from 表名;–查询多列的情况
select 语文 from score;
select 姓名,语文,数学 from score;
如果要查询某一列的数据,则将*替换为列名.
如果要查Score表的姓名列,则SQL语句为:
select 姓名 from score;
如果要查询多列,则将多列的列名替换*,列名之间用逗号隔开.
select 姓名,语文,数学 from score;–查询score表中姓名,语文和数学三列的数据.
–查询的顺序决定结果的展示顺序.
练习(在记事本中编写代码,在PL/SQL developer中执行查看结果):
- 查询emp表的所有列数据;
select * from emp; - 查询dept表所有列的数据;
select * from dept; - 查询emp表的empno列;
select empno from emp; - 查询emp表的ename列;
select ename from emp; - 查询emp表的deptno列;
select deptno from emp; - 查询emp表的empno和ename两列;
select empno, ename from emp; - 查询emp表的empno,deptno和sal三列;
select empno, deptno, sal from emp; - 查询dept表的name,loc和deptno三列;
select name, loc, deptno from dept; - 查询dept表的deptno,name两列;
select deptno, name from dept; - 查询emp表的ename,hiredate和deptno三列;
select ename, hiredate, deptno from emp;
表的重命名和列的重命名:
- 表重命名:就是给表另取一个名字,这个名字可以代替表名;
语法: select 列1,列2,列3 from 表名 别名;
范例: select a.ename, a.hiredate, a.deptno from emp a;
–给emp表取别名a;
我们查询部分列时,列名前实际是有表名的,只是因为只查询了一张表,所以不可不写.
所以查询emp表的ename, hiredate和deptno三列时,语句为:
select emp.ename, emp.hiredate, emp.deptno from emp;
在给表取别名后,则可以用别名代替表名,即:
select a.ename, a.hiredate, a.deptno from emp a;
2.列别名:即给列取一个别名,展示结果时,展示的是列的别名
语法: select 列1 as 别名1,列2 as 别名2,列3 as 别名3 from 表名;–As 可以省略
AS:关键字,意思为: 别名是
范例:
select ename as 姓名, hiredate as 入职时间, deptno 部门编号 from emp;
–给emp表的ename列去别名为姓名,hiredate取别名为入职时间,deptno取别名为部门编号
注意点:
(1). AS可以省略;
(2). 当别名包含特殊符号,或者以数字开头时,要用双引号(英语模式下)包裹;
(3). 中文可以直接用作别名,不需要单引号(唯一一个);
(4).以数字,符号开头时,需要加"";
(5).当别名中包含除_以外的符号时,须加"";
(6).单词缩写用下划线连接,长度不超过30字符;
(7).切忌不要用拼音缩写;
练习:
- 给emp表取别名a, 并查询empno, ename和deptno三列;
select a.empno,a.ename, a.deptno from emp a; - 为dept表取别名b,并查询deptno,dname两列;
select b.deptno, b.dname from dept b; - 查询emp表的ename, job和hiredate三列,并分别取别名 员工姓名,工种和入职时间;
select ename as 员工姓名, job as 工种, hiredate as 入职时间 from emp; - 查询emp表的ename, deptno和sal三列,并分别取别名为EMP_NAME, 部门编号和收入;
select ename as EMP_NAME, deptno as 部门编号, sal as 收入 from emp; - 查询emp表的empno, mgr和deptno三列,分别取别名员工编号,管理员编号和部门编号;
select empno as 员工编号, mgr as 管理员编号, deptno as 部门编号 from emp;