很多时候,我们有一些很长的表名,每次都写表名很麻烦。我们可以使用别名来帮助我们,多亏了这一点,我们只需要写一次长表名。
表别名一般写在语句的 FROM 部分,或 JOIN 部分。
例如,考虑我们有两个表,marks 和 student_info,分别定义如下 -
分数
名称 | roll_no | perc_marks |
---|---|---|
Aniket | 12 | 24 |
悉地 | 45 | 65 |
亚什 | 26 | 42 |
伊莎 | 56 | 87 |
学生信息
名称 | roll_no | 年龄 | 性别 |
---|---|---|---|
阿尼凯特 | 12 | 26 | 米 |
Isha | 56 | 25 | F |
Siddhi | 45 | 23 | F |
Yash | 26 | 25 | 米 |
现在,如果您想在一个查询中查看学生的姓名、roll_no、perc_marks 和年龄,您的查询将如下所示 -
SELECT marks.name, marks.roll_no, marks.perc_marks, student_info.age FROM marks LEFT JOIN student_info ON student_info.roll_no = marks.roll_no
输出将是
名称 | roll_no | perc_marks | 年龄 |
---|---|---|---|
Aniket | 12 | 24 | 26 |
Siddhi | 45 | 65 | 25 |
Yash | 26 | 42 | 23 |
Isha | 56 | 87 | 25 |
但是,如您所见,此查询非常冗长。现在让我们看看这个带有别名的查询的样子。
SELECT a.name, a.roll_no, a.perc_marks, b.age FROM marks a LEFT JOIN student_info b ONb.roll_no= a.roll_no
如您所见,我们只需要写一次表的名称。在其他任何地方,我们都使用了表别名,而且效果很好。输出仍将与上述相同。
您可以看到我们在上面的查询中使用了语法“table_name alias”。另一个稍微更具解释性的语法是“table_name AS 别名”。因此,上面的查询也可以写成 -
SELECT a.name, a.roll_no, a.perc_marks, b.age FROM marks AS a LEFT JOIN student_info AS b ONb.roll_no= a.roll_no
它会给出相同的输出。
名称 | roll_no | perc_marks | 年龄 |
---|---|---|---|
Aniket | 12 | 24 | 26 |
Siddhi | 45 | 65 | 25 |
Yash | 26 | 42 | 23 |
Isha | 56 | 87 | 25 |