SQL 知识量:22 - 44 - 129
在SQL中,除了可以使用列的别名外,也可以使用表的别名。使用表别名的理由是:
可以缩短SQL语句。
可以在一条select语句中多次使用相同的表。
定义表别名与定义列别名类型,一般使用as关键字。
例如:查询学生信息及选课信息,按照学生姓名排序。
select s.*,l.name from student as s,lesson as l,course as c where s.id=c.id_student and l.id=c.id_lesson order by s.name;
结果:
+----+-------+-----+--------+---------+ | id | name | age | sex | name | +----+-------+-----+--------+---------+ | 3 | Bob | 11 | male | English | | 2 | Jame | 12 | male | Natural | | 2 | Jame | 12 | male | Maths | | 5 | Jen | 11 | female | Natural | | 5 | Jen | 11 | female | English | | 4 | Robot | 10 | male | Natural | | 4 | Robot | 10 | male | Maths | | 4 | Robot | 10 | male | English | | 1 | Susan | 11 | female | Maths | | 1 | Susan | 11 | female | English | | 6 | Toney | 10 | male | Natural | | 6 | Toney | 10 | male | Maths | +----+-------+-----+--------+---------+
在以上示例中,利用as关键字,student的别名定义为s,lesson的别名定义为l,course的别名定义为c。在SQL中,select部分、where部分和order by子句都可以使用表别名,这样大大简化了SQL语句,不过在阅读SQL语句时可能需要费点力气。
需要注意的是:
Oracle中没有as关键字,在Oracle中使用表别名仅需简单的指定列名和别名即可,例如:student s。
表别名只在查询执行中使用,与列别名不同,表别名不会出现在查询结果中。
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6