SQL 别名
通过使用 SQL,可以为表名称或列名称指定别名。
基本上,创建别名是为了让列名称的可读性更强。
列的 SQL 别名语法
SELECT column_name AS alias_name
FROM table_name;
表的 SQL 别名语法
SELECT column_name(s)
FROM table_name AS alias_name;
演示数据库
在本教程中,主要是使用Mysql数据库,虽然和其他数据有一定的差异,不影响对SQL语法的讲解。
相应的脚本请查看上一篇文章:开始前准备环境
以下是 "member" 表中的数据:
member_id | member_code | password | nick_name | remarks | location | status |
---|---|---|---|---|---|---|
1010 | 10001 | 112331 | 张三 | xxx | 广东 | 1 |
1011 | 10002 | 112333 | 李四 | xxx | 北京 | 1 |
1012 | 10003 | 1234567 | 王五 | xxx | 广东 | 1 |
1013 | 10004 | 112335 | 张飞 | xxx | 广东 | 1 |
1014 | 10005 | 112336 | 关习 | xxx | 上海 | 1 |
1015 | 10006 | 112337 | 关平 | xxx | 湖南 | 1 |
1016 | 10007 | 112338 | 小李 | xxx | 广东 | 1 |
1017 | 10008 | 112339 | 韩飞 | xxx | 深圳 | 1 |
1018 | 10009 | 112310 | 刘备 | xxx | 三国 | 1 |
1019 | 10010 | 112312 | 吴越 | xxx | 广西 | 1 |
1020 | 10011 | 112312 | 韩信 | xxx | 南京 | 1 |
1021 | 10012 | 112331 | 张包 | xxx | 广东 | 1 |
以下是“product”表中的数据:
id | product_name | english_name | price | category_id | created_time |
---|---|---|---|---|---|
1 | 香蕉 | Banana | 10 | 1 | 2023/10/22 11:44 |
2 | 苹果 | Apple | 15 | 1 | 2023/10/22 11:44 |
3 | 桃子 | Peach | 9 | 1 | 2023/10/6 11:44 |
4 | 梨子 | Pear | 8 | 1 | 2023/10/20 11:45 |
5 | 鸡蛋 | Eggs | 3 | 2 | 2023/10/22 11:45 |
6 | 鸭蛋 | Duck's egg | 4 | 2 | 2023/10/22 11:45 |
7 | 猪肉 | Pork | 12 | 2 | 2023/10/22 11:45 |
8 | 花生油 | Peanut oil | 20 | 3 | 2023/10/10 11:46 |
9 | 面条 | Nooddle | 2 | 4 | 2023/10/3 11:46 |
10 | 笔记本 | Notebook | 15 | 5 | 2023/10/12 11:46 |
列的别名实例
下面的 SQL 语句指定了两个别名,一个是 product_name 列的别名,一个是 category_id 列的别名。提示:如果列名称包含空格,要求使用双引号或方括号:
示例语句:
SELECT product_name as p, category_id as c FROM product
查询结果:
p | c |
---|---|
香蕉 | 1 |
苹果 | 1 |
桃子 | 1 |
梨子 | 1 |
鸡蛋 | 2 |
鸭蛋 | 2 |
猪肉 | 2 |
花生油 | 3 |
面条 | 4 |
笔记本 | 5 |
在下面的 SQL 语句中,我们把三个列(member_code、nick_name 和 location)结合在一起,并创建一个名为 "member_info" 的别名:
SELECT member_id, concat(member_code, ',', location, ',', nick_name) as member_info FROM member
查询结果:
member_id | member_info |
---|---|
1010 | 10001,广东,张三 |
1011 | 10002,北京,李四 |
1012 | 10003,广东,www.jhelp.net |
1013 | 10004,广东,张飞 |
1014 | 10005,上海,关习 |
1015 | 10006,湖南,关平 |
1016 | 10007,广东,小李 |
1017 | 10008,深圳,韩飞 |
1018 | 10009,三国,刘备 |
1019 | 10010,广西,吴越 |
1020 | 10011,南京,韩信 |
1021 | 10012,广东,张包 |
1022 | 100110,北京,新添加 |
1023 | 100111,北京,新添加2 |
表的别名实例
下面的 SQL 语句选取 "产品" 的所有记录。我们使用 "product" 表,并分别为它们指定表别名 "p"(通过使用别名让 SQL 更简短):
SELECT * FROM product p
查询结果:
id | product_name | english_name | price | category_id | created_time |
---|---|---|---|---|---|
1 | 香蕉 | Banana | 10 | 1 | 2023/10/22 11:44 |
2 | 苹果 | Apple | 15 | 1 | 2023/10/22 11:44 |
3 | 桃子 | Peach | 9 | 1 | 2023/10/6 11:44 |
4 | 梨子 | Pear | 8 | 1 | 2023/10/20 11:45 |
5 | 鸡蛋 | Eggs | 3 | 2 | 2023/10/22 11:45 |
6 | 鸭蛋 | Duck's egg | 4 | 2 | 2023/10/22 11:45 |
7 | 猪肉 | Pork | 12 | 2 | 2023/10/22 11:45 |
8 | 花生油 | Peanut oil | 20 | 3 | 2023/10/10 11:46 |
9 | 面条 | Nooddle | 2 | 4 | 2023/10/3 11:46 |
10 | 笔记本 | Notebook | 15 | 5 | 2023/10/12 11:46 |
以下的SQL选取有“购买记录”的会员的信息,要从member, order表进行关系获取:
select m.member_id, m.nick_name, m.location, o.buy_amount from
member m join order o on m.member_id=o.member_id
在下面的情况下,使用别名很有用:
- 在查询中涉及超过一个表
- 在查询中使用了函数
- 列名称很长或者可读性差
- 需要把两个列或者多个列结合在一起
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
本文链接:https://www.jhelp.net/p/cqGKBG6VixjPtp5B (转载请保留)。
关注下面的标签,发现更多相似文章
本站推荐
-
1154
-
1079
-
943
-
940
-
935
文章目录