1、对表起别名

1.1 使用 as

有时候,在对数据库中的表进行操作的时候,发现表名比较冗长,这时候我们就需要对表创建一个别名,别名的关键字为as(也可以不加)

select a.Sno,a.Sname,a.Sage
from student as a---
select a.Sno,a.Sname,a.Sage
from student a (as可以去掉)

我们就对student取了一个别名叫做a

1.2 使用 WITH … AS … 语句增强 SQL 查询的可读性

因为业务比较复杂,所以大家经常会用到各种子查询(sub-query)。于是会写成类似这样:

SELECTt1.foo,t1.bar,t2.baz
FROM (SELECTfoo,barFROMtb1WHERE<conditions>) AS t1 INNER JOIN (SELECTbazFROMtb2WHERE<conditions>) AS t2 ON <conditions>
WHERE<conditions>;

这样写子查询会有两个问题:

  • 一是子查询的结果如果要在多个不同地方用到,那么就要复制粘贴多次,实际执行的时候也可能执行多次。
  • 二是当子查询 或/和 JOIN 特别多的时候,整个查询就会变得无比复杂,可读性极差。

为解决问题,可用视图(VIEW)解决,也可用 WITH ... AS ... 子句来解决WITH <temprary_table_name> AS (SELECT ... FROM <table_name> WHERE <conds>) 和视图类似,可以创建一个临时表,供之后使用。按上述例子,改用 WITH … AS … 子句可以写成这样:

WITH t1 AS (SELECTfoo,barFROMtb1WHERE<conditions>
),
t2 AS (SELECTbazFROMtb2WHERE<conditions>
)SELECTt1.foo,t1.bar,t2.baz
FROMt1 INNER JOIN t2 ON <conditions>
WHERE<conditions>;

https://liam.page/2020/03/13/the-WITH-AS-clause-in-Hive-SQL/

2、对字段起别名


更改后:

SQL:对表、字段起别名相关推荐

  1. oracle PL/SQL里给字段起别名

    select case TianQi when 1 then '晴天' when 2 then '阴天' when 3 then '小雨'end as "别名" from tb-- ...

  2. shell 提取sql 的字段名表名_Mysql 常用SQL语句集锦(仅学习)

    基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day from table_name" ...

  3. MySQL查询——为表和字段取别名

    在前面介绍分组查询.集合函数查询和嵌套子查询内容中,有的地方使用 AS 关键 字为查询结果中的某一列指定一个特定的名字.在内连接查询时,则对相同的表 fruits 分别指定两 个不同的名字,这里可以为 ...

  4. MySQL——为表和字段取别名

    1.  为表取别名 当表的名字很长或者执行一些特殊查询时,为了方便操作或者需要多次使用相同的表时,可以为表指定别名,以替代表原来的名称. 语法格式如下:    表名   [AS]   表别名 &quo ...

  5. oracle删除字段约束条件,Oracle 数据库中关于对表字段约束的操作(设置、删除、查询)...

    Oracle 数据库中关于对表字段约束的操作(设置.删除.查询) 1. 给表的单个字段加约束 SQL> ALTER TABLE 表名 ADD UNIQUE(字段名); 2. 删除表的单个字段约束 ...

  6. MySQL简单命令和SELECT查询,给字段起别名【MySQL数据库】

    Java养成计划----学习打卡第六十四天 内容导航 数据库的相关操作 数据库的导入 查看导入数据库中的表 查看表中的数据 查看表的基本结构[简化] 查看表的结构[详细] 查看mysql数据库的版本号 ...

  7. mysql为表和字段取别名_MySQL查询函数---为表和字段取别名

    (1)为表取别名 (2)为字段取别名 (1)为表取别名 当表名字很长或者执行一些特殊查询时,为了方便操作或者需要多次使用相同的表时,可以为表指定别名,用这个别名代替原来的名称.为表取别名的基本语法格式 ...

  8. MySQL数据库——day26 数据库安装,卸载,概念,msq的介绍,安装,连接,DDL,DML,DQL模糊查询,字段控制(别名和运算),排序,聚合函数,分组查询(where和having),分页查询

    学到mysql的时候非常的快,感觉前面的没有很巩固,还是要复习前面的博客 常见的数据库 MySQL , Oracle , SQL Server , SQLite , DB2 , - SQL Serve ...

  9. MySQL:单表查询---简单查询+条件查询+高级查询+表和字段取别名

    目录 一.通用模版展示 简单查询 条件查询 高级查询 表和字段取别名 二.举例说明 简单查询 条件查询 高级查询 表和字段取别名 三.注意事项 四.Mapper简单举例 简单查询 条件查询 高级查询 ...

最新文章

  1. 2022-2028年中国PET薄膜行业市场深度分析及未来趋势预测报告
  2. 更改git bash默认的路径
  3. 切割 Tomcat 的 catalina.out 文件,解决日志文件过大的问题
  4. abs 不会整数 方法 溢出_在 Golang 中针对 int64 类型优化 abs()
  5. Linux引到过程与服务控制
  6. AI x 量化:华尔街老司机解密智能投资正确姿势
  7. Java IO的RandomAccessFile的使用(转)
  8. java8 di_java8 多个list对象用lambda求差集操作
  9. Asp.Net 构架(HttpModule 介绍) - Part.3
  10. SSL自签名的实现类org apache commons httpclient contrib ssl EasySSLP
  11. 【Linux】监视gpu使用情况
  12. Gstreamer之gst-plugin-bad交叉编译集成x265(二十二)
  13. ecshop4.0php,ECSHOP安装教程【ECSHOP4.0安装教程】图解ECSHOP4.0安装教程流程和步骤-ECSHOP教程网...
  14. android espresso 教程,Espresso 设置说明
  15. 摘抄部分经典励志语录: 送给所有心怀梦想的人们
  16. 2022-03-03 北京 计算机知识。字符编码,ppt
  17. Use HAProxy to load balance 300k concurrent tcp socket connections: Port Exhaustion, Keep-alive and
  18. Win10 无法加载操作系统,关键系统驱动程序丢失或错误 蓝屏错误代码0xc000007b
  19. UNIX环境高级编程(1)——UNIX系统总览
  20. 富文本编辑器粘贴复制Word

热门文章

  1. linux ipsec内核,XFRM -- IPsec协议的内核实现框架
  2. cesium着色器学习系列3-着色器方式绘制图元
  3. 基于Java+Swing实现俄罗斯方块游戏
  4. git合并多个远程commit并提交
  5. 十分钟计算机说课稿,我的十分钟说课稿
  6. 皮影机器人ppt_皮影戏机器人惊艳机器人创想秀
  7. Dart语言笔记(运算符、箭头函数、可选参数)
  8. 动力节点王鹤Spring Boot笔记
  9. 求一个数的所有质因数
  10. 橙单微服务之批量导入