logo图片
MySql教程
MySql用户管理
MySQL数据库
MySql表格和视图
MySQL查询
MySQL索引
MySQL子句
MySQL授权
MySql控制流
MySQL条件
MySQL连接
MySQL键
MySQL触发器
MySQL聚合函数
MySQL常用
MySQL正则表达式
MySql差异性

MySQL 别名

MySQL中的别名用于为特定查询的表或表中的列提供 临时名称 。它用作表示表或列名称的昵称。
当表或列的名称不是实时的用户友好时,这将非常有用。它使列的名称更具可读性。 MySQL别名只能存在于查询的 持续时间中。

MySQL别名的优点

以下是别名的优点: MySQL:
在查询中要使用多个表的情况下,这是首选方法。 它提供了非常有用且灵活的功能,使我们能够快速完成复杂的任务。 这使列或表名更具可读性。 当您在查询中使用该函数时,它很有用。 它还可以使我们合并两个或多个列。 当列名很大或不可读时,它也很有用。

语法

以下是MySQL中使用的别名的基本语法:
用于列
SELECT col_name AS alias_name FROM table_name;
用于表
SELECT col_name1, col_name2,... FROM table_name AS alias_name;

参数说明

下表详细说明了参数:
参数 说明
Column_Name 这是我们要创建别名的列名。
Table_Name 这是我们要创建别名的表名。
Alias_Name 这是我们要为列或表分配的临时名称。
AS 这是可选的。如果未指定,则对查询执行没有影响。程序员选择他们在列名的别名期间使用它,而不在表名中使用别名。
如果要给别名加上 空格,则必须将其用引号引起来。通常最好在列名(而不是表名)中使用别名作为空格。以下语法对其进行了更清晰的解释:
SELECT col_name AS 'alias_name' FROM table_name;
现在,我们将了解别名在MySQL中是如何工作的。让我们首先使用以下查询创建一个名为" Student_info "的表:
CREATE TABLE Student_info(
  stud_id int PRIMARY KEY NOT null,
  stud_code varchar(15),
  stud_name varchar(35),
  subject varchar(25),
  marks int
);
创建表后,我们需要插入一条记录。假设该表包含以下数据:
MySQL Alias
说明列别名
如果我们要使用 'Roll No'作为别名从上表中获取 stud_code ,请执行以下语句:
mysql> SELECT stud_code AS Roll_No FROM Student_info;
它将返回以下输出:
MySQL Alias
如果我们要获取则再次使用包含空格和标记为分数的"滚动编号"的stud_code,执行以下语句:
mysql> SELECT stud_code AS 'Roll No', marks AS scores FROM Student_info;
它将返回如下输出:
MySQL Alias
这是另一个示例返回得分大于70的 学生姓名受试者
mysql> SELECT stud_name AS 'Student Name', subject AS 'Subject', marks
FROM Student_info  
HAVING marks > 70
ORDER BY stud_name;
成功执行后,我们可以看到结果集仅包含标记大于70的记录。
MySQL Alias

说明表别名

它允许我们用不同的名称指定表名称。通常,表别名用于多个表,并使用 JOIN 操作将其连接。
假设我们的数据库有一个名为" 学生"的表,其中包含以下数据:
MySQL Alias
此语句将使用表别名返回记录:
mysql> SELECT Student_details.stud_name, Student_details.phone, Student_details.marks 
FROM Students AS Student_details;
它将给出以下输出:
MySQL Alias
让我们看另一个例子来理解使用JOIN操作的表别名。假设我们的数据库还有一个名为" Student_detail "的表,其中包含以下数据:
 MySQL Alias
在两个表中,我们都可以看到它们包含一列相同的'stud_code'。如果我们不使用表别名就使用它,它将给出一个 错误,该错误表示: 一个子句中的列" stud_code"不明确。
因此,如果要避免这种类型的错误,使用表别名的概念。该语句更清楚地说明了这一点:
mysql> SELECT stud_name, branch, grade, phone
FROM Students AS S
INNER JOIN Student_detail AS D
ON S.stud_code=D.stud_code
ORDER BY grade;
成功执行上述语句后,我们将获得如下输出:
MySQL Alias
如果您不想在查询中使用别名概念,则MySQL使用表名来标识列名。此过程使该语句冗长且可读性较差,如下所示:
mysql> SELECT stud_name, branch, grade, phone
FROM Students INNER JOIN Student_detail 
ON Students.stud_code=Student_detail.stud_code
ORDER BY grade;

昵称: 邮箱:
Copyright © 2020 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4