您可以在SQL中设置表别名,在表名后面键入标识符.
SELECT * FROM table t1;
Run Code Online (Sandbox Code Playgroud)
您甚至可以使用关键字AS来指示别名.
SELECT * FROM table AS t1;
Run Code Online (Sandbox Code Playgroud)
它们之间有什么区别?
我看到老DBA的人倾向于不用编写语句AS,但大多数新教程都使用它.
更新:我知道表和列别名的用途是什么.我很好奇,有什么原因可以设置一个单独的关键字来设置别名,而它也可以在没有它的情况下工作.
在SQL中使用表别名有哪些优缺点?我个人试图避免它们,因为我认为它们使代码的可读性降低(特别是在阅读大的where /和语句时),但我有兴趣听到任何反对点.什么时候使用表别名通常是个好主意,你有没有任何首选格式?
我很想知道人们如何使用表别名.我工作的其他开发人员总是使用表别名,并且总是使用a,b,c等的别名.
这是一个例子:
SELECT a.TripNum, b.SegmentNum, b.StopNum, b.ArrivalTime
FROM Trip a, Segment b
WHERE a.TripNum = b.TripNum
Run Code Online (Sandbox Code Playgroud)
我不同意他们的看法,认为表别名应该更加谨慎使用.
我认为在查询中包含两次相同的表时应该使用它们,或者当表名很长并且在查询中使用较短的名称时,将使查询更容易阅读.
我也认为别名应该是一个描述性的名称,而不仅仅是一个字母.在上面的例子中,如果我觉得我需要使用1个字母的表别名,我会使用t表示Trip表,而s表示段表.