zoukankan      html  css  js  c++  java
  • 玩转MaxCompute studio SQL编辑器

    SQL因其简单易学的特点,是用户与MaxCompute服务交互的主要手段。如何帮助用户高效愉快的编写SQL是MaxCompute studio的核心使命,下面就让我们来一探究竟:

    忘记语法

    相信大家都有过忘记SQL怎么写的时候,一旦忘记,恐怕只能到处去找文档和代码示例,被迫离开全神贯注的SQL editor,十分影响效率。在studio中,我们集成了大量的MaxCompute SQL语法模板,你只需一个快捷键就能唤出,十分方便。譬如,我现在想要在表中加入一列,但不知道SQL语法,那么使用快捷键(Windows: Ctrl + J, Mac: ⌘ + J)唤出live template,输入column关键字搜索语法模板,这里我们选择alter table add column:
    image.png
    此时,SQL editor中会立刻插入添加列的语法模板,你只需继续输入表和列即可(使用tab键在待编辑元素间切换)
    image.png

    忘记Schema

    SQL语法结构有了,接下来就是往里填各种实体元素(主要包括表和函数)。同样的,难道要我完整的记住表名或函数名才能完成SQL吗?当然不需要,studio想你所想:

    列表与搜索

    当前project下都有哪些表和函数?

    • 在project explorer中你能获得一个全局视图:
      image.png
    • 通过快捷键(Windows: Ctrl+Alt+Shift+N mac:⌥+⌘+O)唤出navigate symbol,输入表名或函数名搜索:
      image.png

    在project explorer中双击实体或在navigate symbol中选择实体,即可显示其详情。

    智能提示

    studio会根据当前光标位置的语法上下文,给出相应的智能提示,选择即可,无需输入:
    image.png

    schema关联

    • 鼠标悬停在表名上时,会显示表的schema:
      image
    • 悬停在函数名上时,会显示函数签名:
      image

    定义跳转

    进一步的,如果想查看实体详情,那么:

    • 表:按住ctrl键,单击,就会打开表详情窗口,包括示例数据的展示。
    • 自定义函数:按住ctrl键单击,则会显示其源码(java是jar的反编译,python是源码)。
    • 内置函数:(Windows: Ctrl + Q mac: Ctrl + J) 唤出帮助文档:
      image

    代码检测

    SQL除了满足语法,我们也定义了一些规则,来检测你所写的SQL是否有潜在问题,譬如:
    image.png
    全部的规则列表可在Preference - Editor - Inspections - MaxCompute 处查看。

    轻松阅读

    SQL写好了,需要阅读并理解其含义。对此studio支持如下特性,方便用户阅读SQL。

    语法高亮

    SQL中不同类型的字符会有不同的高亮颜色,有语法错误时会显示错误信息:
    image.png

    括号匹配与代码折叠

    • 单击左括号,与其配对的右括号也会高亮显示,反之亦然。
    • 当SQL比较长时,可点击左侧的折叠按钮,把子句折叠起来,便于排除干扰。

    image.png

    格式化

    好的格式能帮助我们更好的理解SQL结构,当遇到一个杂乱冗长的SQL,你需要做的第一步就是格式化(快捷键Ctrl + Alt + L)。同时,studio还支持自定义格式化规则(譬如关键字大小写,是否换行等),可在如下页面配置:
    OdpsqlCodeStyle

    可视化

    点击SQL editor左下侧的graph标签页,能以POT图的方式展现SQL结构,譬如下图(对应的SQL文本select * from hy_test):
    image.png
    目前此图颜值不高,接下来我们会改进,使得与SQL运行时的Job Graph一样美。

    使用查找

    有时,我们想知道某张表(或函数)都在哪些脚本中使用,以便于我们更好的理解这张表的加工逻辑。那么,你可以在editor中选中表,右键菜单选 Find Usages,则会在当前IntelliJ project下搜索到所有使用该表的脚本:
    image.png

    运行

    部分执行

    如果想执行SQL中的部分语句,那么你可以:

    • 通过鼠标选择你要执行的文本段,然后点击运行按钮:
      image.png
    • 通过左侧边栏的gutter icon,执行单条语句(with set表示带着set语句一起):
      image.png

    console无缝集成

    你可以直接在SQL editor中运行譬如grant语句之类的console命令,也可以点击toolbar上的console图标打开一个MaxCompute Console窗口输入console命令:
    image.png

    运行历史

    所有通过studio提交运行的sql我们都记录在本机了,你可以点击toolbar上的图标,弹出sql history窗口,查询你曾经执行过的sql:
    sql_history.png

  • 相关阅读:
    Algs4-1.5.9画树
    Algs4-1.5.7实现QuickFindUF类和QuickUnionUF类
    *Algs4-1.5.6quick-union的运行时间-(未解决)
    *Algs4-1.5.5quick-find的运行时间-(未解决)
    Algs4-1.5.3使用加权quick-union算法完成练习1.5.1
    Algs4-1.5.4给出id[]和sz[]的内容与次数
    深入了解RabbitMQ工作原理及简单使用
    python 字符串、数字转换为bytes和bytes转换为字符串
    django html模板的语法
    完美的分布式监控系统——普罗米修斯
  • 原文地址:https://www.cnblogs.com/zhaowei121/p/9101257.html
Copyright © 2011-2022 走看看