首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅仅根据表在FROM子句中的添加顺序,在SQL查询中使用A、B、C作为表别名有什么好处?

仅仅根据表在FROM子句中的添加顺序,在SQL查询中使用A、B、C作为表别名有什么好处?
EN

Stack Overflow用户
提问于 2017-11-16 03:57:58
回答 1查看 707关注 0票数 4

我们让一些新的初学者去参加一些基本的SQL培训,他们回来后将第一个表重命名为A,第二个表重命名为B,依此类推。其中一人说,他们被告知:-打字更快-如果你使用起始字母,那么当你的表以相同的名称开始时,就会遇到问题

在我看来,这严重牺牲了查询的可读性,我可能会成为审查他们编写的代码的人。在告诉他们使用第一个字母和数字(如果有多个表)或仅使用表名的缩写版本之前,我只想确保没有遗漏什么。在大多数情况下,表名只有5-8个字母,所以我希望它们使用全名,而不是不以任何方式描述表的别名。

还有其他好处吗?

EN

回答 1

Stack Overflow用户

发布于 2017-11-16 04:10:41

好吧,我想举两个例子来说明两个事实

1.- select * from pupils inner join pupils pup2 on pup.id=pup2.otherId。在这个例子中,我确切地知道我链接的是什么,因为我使用了两次相同的表,这对于同一个表至少链接了两次的查询非常有用。

代码语言:javascript
复制
2.- readability is not a problem if you chose well the alias:

 select * from pupils pup inner join parents  payees on 
  parents.id=pupils.parentid
  inner join parents tutors on pupils.tutorid=tutors.id

在这种情况下,可读性不是问题,我仍然知道并区分谁是付钱的父母,谁是家教或法定监护人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47316196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档