阿里云大数据计算服务 MaxCompute
SQL 用户指南
产品版本:V2.0.0
文档版本:20160616
法律声明
阿里云提醒您在阅读或使用本文档之前仔细阅读、充分理解本法律声明各条
款的内容。如果您阅读或使用本文档的,您的阅读或使用行为将被视为对本声明
全部内容的认可。
1、您应当通过阿里云网站或阿里云提供的其他授权通道下载、获取本文档,
且仅能用于自身的合法合规的业务活动。本文档的内容视为阿里云的保密信息,
您应当严格遵守保密义务;未经阿里云事先书面同意,您不得向任何第三方披露
本文档内容或提供给任何第三方使用。
2、未经阿里云事先书面许可,任何单位、公司或个人不得擅自摘抄、翻译、
复制本文档内容的部分或全部,不得以任何方式或途径进行传播和宣传。
3、由于产品版本升级、调整或其他原因,本文档内容有可能变更。阿里云
保留在没有任何通知或者提示下对本文档的内容进行修改的权利,并在阿里云
授权通道中不时发布更新后的用户文档。您应当实时关注用户文档的版本变更
并通过阿里云授权渠道下载、获取最新版的用户文档。
4、本文档仅作为用户使用阿里云产品及服务的参考性指引,阿里云以大数
据集成服务平台的“现状”、“有缺陷”和“当前功能”的状态提供本文档。阿
里云在现有技术的基础上尽最大努力提供相应的操作指引,但阿里云在此明确
声明对本文档内容的准确性、完整性、适用性、可靠性等不作任何明示或暗示
阿里云®大数据计算服务 MaxCompute:SQLSQL 用户指南
20160616
法律声明
的保证。任何单位、公司或个人因为下载、使用或信赖本文档而发生任何差错
或经济损失的,阿里云不承担任何法律责任。在任何情况下,阿里云均不对任
何间接性、后果性、惩戒性、偶然性、特殊性或刑罚性的损害,包括用户使用
或信赖本文档而遭受的利润损失,承担责任(即使阿里云已被告知该等损失的
可能性)。
5、阿里云网站上所有内容,包括但不限于著作、产品、图片、档案、资讯、
资料、网站架构、网站画面的安排、网页设计,均由阿里云和/或其关联公司依
法拥有其知识产权,包括但不限于商标权、专利权、著作权、商业秘密等。非
经阿里云和/或其关联公司书面同意,任何人不得擅自使用、修改、复制、公开
传播、改变、散布、发行或公开发表阿里云网站、产品程序或内容。此外,未
经阿里云事先书面同意,任何人不得为了任何营销、广告、促销或其他目的使
用、公布或复制阿里云的名称(包括但不限于单独为或以组合形式包含“阿里
云”、“Aliyun”、“AliCloud”、“万网”等阿里云和/或其关联公司品牌,上述品牌
的附属标志及图案或任何类似公司名称、商号、商标、产品或服务名称、域名、
图案标示、标志、标识或通过特定描述使第三方能够识别阿里云和/或其关联公
司)。
6、如若发现本文档存在任何错误,请与阿里云取得直接联系
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616
目录
I
1 概要 ......................................................................................................................... 1
1.1 使用场景 ................................................................................................................... 1
1.2 保留字 ....................................................................................................................... 1
1.3 分区表 ....................................................................................................................... 2
1.4 类型转换 ................................................................................................................... 3
1.4.1 显式类型转换 ................................................................................................................ 3
1.4.2 隐式类型转换及其作用域 ........................................................................................ 4
1.4.3
SQL 内建函数 ................................................................................................................ 8
1.4.4
CASE WHEN.................................................................................................................... 8
1.4.5 分区列 ............................................................................................................................... 9
1.4.6 UNION ALL...................................................................................................................... 9
1.4.7
String 类型与 Datetime 类型之间的转换 ......................................................... 9
2 运算符 ................................................................................................................. 11
2.1 关系操作符 ............................................................................................................11
2.2 算术操作符 ............................................................................................................13
2.3 位运算操作符 ........................................................................................................14
2.4 逻辑操作符 ............................................................................................................14
3 DDL 语句 ............................................................................................................ 16
3.1 表操作 .....................................................................................................................16
3.1.1 创建表(CREATE TABLE) ........................................................................................ 16
3.1.2 删除表(DROP TABLE) ............................................................................................. 19
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616
目录
3.1.3 重命名表(RENAME TABLE) .................................................................................. 20
3.1.4 修改表的注释 ............................................................................................................. 21
3.1.5 修改表的生命周期属性 .......................................................................................... 21
3.1.6 禁止生命周期 ............................................................................................................. 22
3.1.7 修改表的修改时间 .................................................................................................... 23
3.1.8 清空非分区表里的数据 .......................................................................................... 23
3.1.9 备份表的数据 ............................................................................................................. 24
3.2 视图操作 .................................................................................................................26
3.2.1 创建视图(CREATE VIEW) ...................................................................................... 26
3.2.2 删除视图(DROP VIEW) .......................................................................................... 27
3.2.3 重命名视图(RENAME VIEW) ............................................................................... 28
3.3 列及分区操作 ........................................................................................................28
3.3.1 添加分区(ADD PARTITION) ................................................................................. 28
3.3.2 删除分区(DROP PARTITION) ............................................................................... 30
3.3.3 添加列 ............................................................................................................................ 30
3.3.4 修改列名 ....................................................................................................................... 31
3.3.5 修改列、分区注释 .................................................................................................... 31
3.3.6 修改分区的修改时间 ............................................................................................... 31
3.3.7 修改分区值 .................................................................................................................. 32
4 DML 语句 ........................................................................................................... 33
4.1
Insert 语句 .................................................................................................................33
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616
目录
4.1.1 更新表中的数据(INSERT OVERWRITE/INTO)............................................. 33
4.1.2 多路输出(MULTI INSERT) ..................................................................................... 35
4.1.3 输出到动态分区(DYNAMIC PARTITION) ........................................................ 37
4.2 Select 语句 .................................................................................................................39
4.2.1
SELECT 操作 ............................................................................................................... 39
4.2.2 子查询 ............................................................................................................................ 45
4.3 Union 语句 .................................................................................................................45
4.3.1 UNION ALL................................................................................................................... 45
4.4
Join 语句 .....................................................................................................................47
4.4.1
JOIN 操作 ...................................................................................................................... 47
4.4.2 MAPJOIN HINT ........................................................................................................... 49
4.5 Explain 语句 ..............................................................................................................50
5 内建函数 ............................................................................................................. 55
5.1 数学运算函数 ........................................................................................................55
5.1.1 ABS .................................................................................................................................. 55
5.1.2 ACOS ............................................................................................................................... 56
5.1.3 ASIN ................................................................................................................................ 57
5.1.4 ATAN ............................................................................................................................... 58
5.1.5
CEIL ................................................................................................................................. 58
5.1.6
CONV .............................................................................................................................. 59
5.1.7
COS .................................................................................................................................. 60
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616
目录
5.1.8
COSH ............................................................................................................................... 61
5.1.9
COT .................................................................................................................................. 61
5.1.10
EXP ............................................................................................................................. 62
5.1.11
FLOOR....................................................................................................................... 62
5.1.12
LN ............................................................................................................................... 63
5.1.13
LOG ............................................................................................................................ 63
5.1.14
POW ........................................................................................................................... 64
5.1.15
RAND ........................................................................................................................ 65
5.1.16
ROUND ..................................................................................................................... 65
5.1.17
SIN .............................................................................................................................. 67
5.1.18
SINH .......................................................................................................................... 67
5.1.19
SQRT .......................................................................................................................... 68
5.1.20
TAN ............................................................................................................................ 68
5.1.21
TANH ......................................................................................................................... 69
5.1.22
TRUNC ...................................................................................................................... 69
5.2 字符串处理函数 ....................................................................................................71
5.2.1
CHAR_MATCHCOUNT .............................................................................................. 71
5.2.2
CHR ................................................................................................................................. 71
5.2.3
CONCAT ......................................................................................................................... 72
5.2.4 GET_JSON_OBJECT .................................................................................................... 73
5.2.5
INSTR ............................................................................................................................. 75
5.2.6
IS_ENCODING .............................................................................................................. 76
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616
目录
5.2.7 KEYVALUE .................................................................................................................... 77
5.2.8
LENGTH......................................................................................................................... 78
5.2.9
LENGTHB ...................................................................................................................... 79
5.2.10
MD5 ........................................................................................................................... 80
5.2.11
PARSE_URL ............................................................................................................. 80
5.2.12
REGEXP_EXTRACT .............................................................................................. 82
5.2.13
REGEXP_INSTR ..................................................................................................... 83
5.2.14
REGEXP_REPLACE ............................................................................................... 84
5.2.15
REGEXP_SUBSTR.................................................................................................. 86
5.2.16
REGEXP_COUNT ................................................................................................... 87
5.2.17
SPLIT_PART ............................................................................................................ 88
5.2.18
SUBSTR .................................................................................................................... 89
5.2.19
TOLOWER ............................................................................................................... 90
5.2.20
TOUPPER ................................................................................................................. 91
5.2.21
TO_CHAR ................................................................................................................. 91
5.2.22
TRIM .......................................................................................................................... 92
5.2.23
URL_ENCODE ......................................................................................................... 93
5.2.24
URL_DECODE ......................................................................................................... 94
5.3 日期处理函数 ........................................................................................................95
5.3.1 DATEADD ..................................................................................................................... 95
5.3.2 DATEDIFF ..................................................................................................................... 98
5.3.3 DATEPART .................................................................................................................... 99
阿里云®大数据计算服务 MaxCompute:SQL 用户指南 20160616