PQL 快速入门
PQL基础
数据流转
输出文件
PQL 中的语句
分支和循环
更优雅的数据操作
PQL 高级特性
系统函数
自定义函数
扩展操作
其他语言相关
附录
PQL 使用了很多符号用来实现各种功能,这些符号可能与业务语句中的符号冲突,这时可以使用符号对应的编码代替。解释器在执行时会将这些特殊编码恢复成对应的字符。
字符 | 编码 |
---|---|
; | ~u003b |
$ | ~u0024 |
@ | ~u0040 |
! | ~u0021 |
- | ~u002d |
/ | ~u002f |
( | ~u0028 |
) | ~u0029 |
\r 回车 | ~u000d |
\n 换行 | ~u000a |
# | ~u0023 |
% | ~u0025 |
& | ~u0026 |
举个在 PQL 注释中介绍的例子。AnalyticDB 在查询时有时需要设置参数,比如 Hive 也经常需要设置参数。
以上语句虽然可以正常工作,但是PQL会把/*+nested_loop_join=true*/
部分当作注释去掉再执行,就像没有设置参数一样,执行性能会达不到预期。上例可修改为:
把/
转成~u002f
,这样 PQL 就不会把这部分当作注释了。加SELECT #
的原因是因为这条语句不是以SELECT
开头了,需要告诉解析器这是一条查询语句,当作 SELECT 语句来执行,参见 PQL 中的 SQL 语句。
参考链接