纵有疾风起
人生不言弃

mysql入门系列之as用法

在多表联合查询的时候需要给表起别名,table1 as a,table as b where a.id=b.id

SQL 表别名

在 SQL 语句中,可以为表名称及字段(列)名称指定别名(Alias),别名是 SQL 标准语法,几乎所有的数据库系统都支持。通过关键字 AS 来指定。

表别名语法:

SELECT column FROM table AS table_alias

上述 SQL 执行后的效果,给人感觉是对 table_alias 表进行查询,但实际上对单表做简单的别名查询通常是无意义的。一般是对一个表要当作多个表来操作,或者是对多个表进行操作时,才设置表别名。

表别名使用例子

下面是一个简单的多表操作的例子:

article 文章表:

aid title content uid pubtime
1 文章1 文章1正文内容… 1 1278982219
2 文章2 文章2正文内容… 1 1278985319
3 文章3 文章3正文内容… 2 1279185319
user 用户表:

uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev.com 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiao@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf490 jack@gmail.com 1278061380

当查询一篇文章的时候,一般会同时将对应的文章作者查询出来,通常的 SQL 语句为:

SELECT article.title,article.content,user.username FROM article, user 
WHERE article.aid=1 AND article.uid=user.uid

设置表别名后:

SELECT a.title,a.content,u.username FROM article AS a, user AS u where a.aid=1 and a.uid=u.uid

上述两条 SQL 语句查询结果是一样的:

title content username
文章1 文章1正文内容… admin

可以看出,使用表别名查询,可以使 SQL 变得简洁而更易书写和阅读,尤其在 SQL 比较复杂的情况下。除了使用别名来简化 SQL 外,有些时候例如一个表做自身关联时,必须要使用别名来当作两个表进行关联操作。

在 SQL 中,不仅可以指定表别名,同样还可以指定字段(列)别名,以解决多表之间复杂查询的问题,具体请参阅《》。

未经允许不得转载:起风网 » mysql入门系列之as用法
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录