检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
条件表达式 CASE 标准的SQL CASE表达式有两种模式。 “简单模式”从左向右查找表达式的每个value,直到找出相等的expression: CASE expression WHEN value THEN result [ WHEN ... ] [ ELSE result
sum(expression) FROM table; 注意事项 所要分组的表必须是已经存在的表,否则会出错。 示例 根据group_id与job两个字段生成聚合行、超聚合行和总计行,返回每种聚合情况下的salary总和。 1 2 3 SELECT group_id, job, SUM(salary)
select_statement 格式 无。 说明 SELECT基本语句,即查询语句。 父主题: 标示符
该SDK接口不支持sql_pattern,即通过指定sql片段作为作业过滤条件进行查询。 如果需要则可以通过查询所有作业API接口指定该参数进行查询。 查询SQL类型作业 您可以使用该接口查询当前工程下的所有SQL类型作业的信息并获取查询结果。示例代码如下: def list_sql_jobs(dli_client):
法(GROUPING SETS、CUBE或ROLLUP)的查询只从基础数据源读取一次,而使用UNION ALL的查询将读取基础数据三次。这就是当数据源不具有确定性时,使用UNION ALL的查询可能会产生不一致的结果的原因。 --创建一个航运表 create table shipping(origin_state
CASE搜索函数 功能描述 按指定顺序为每个WHEN子句的boolean_expression求值。返回第一个取值为TRUE的boolean_expression的result_expression。 语法格式 1 CASE WHEN boolean_expression THEN
不支持队列类型切换,如需使用其他队列类型,请重新购买新的队列。 管理队列 不支持切换队列的计费模式。 队列不支持切换区域。 创建队列时(非弹性资源池模式的队列),仅支持包年包月队列和按需专属队列选择跨AZ双活,且跨AZ的队列价格为单AZ模式下的2倍。 DLI队列不支持访问公网。 队列扩缩容
30秒内的订单数量,并根据窗口的订单id和窗口开启时间作为主键,将结果实时统计到JDBC中: 根据MySQL和kafka所在的虚拟私有云和子网创建相应的跨源,并绑定所要使用的队列。然后设置安全组,入向规则,使其对当前将要使用的队列放开,并根据MySQL和kafka的地址测试队列连
30秒内的订单数量,并根据窗口的订单id和窗口开启时间作为主键,将结果实时统计到JDBC中: 根据MySQL和kafka所在的虚拟私有云和子网创建相应的跨源,并绑定所要使用的队列。然后设置安全组,入向规则,使其对当前将要使用的队列放开,并根据MySQL和kafka的地址测试队列连
UNION默认是去重的,UNION ALL是不去重的。 不能在多个集合运算间(UNION,INTERSECT,EXCEPT)加括号,否则会出错。 示例 返回“SELECT * FROM student _1”查询结果与“SELECT * FROM student _2”查询结果的并集,不包含重复记录。
REPLACE关键字来避免报错。 视图中包含的表或视图信息不可被更改,如有更改可能会造成查询失败。 如果创建表和创建视图使用的计算引擎不一致,可能会因为varchar类型不兼容,导致视图查询失败。 例如:使用Spark 3.x版本创建的表,建议您使用Spark 2.x创建相应的视图。 示例 先通过对s
EXCEPT 功能描述 返回两个查询结果的差集。 语法格式 1 select_statement EXCEPT select_statement; 关键字 EXCEPT:做集合减法。A EXCEPT B将A中所有和B重合的记录扣除,然后返回去重后的A中剩下的记录,EXCEPT默认不去
队列相关 约束限制 当前使用SDK创建的作业不支持在default队列上运行。 查询所有队列 DLI提供查询队列列表接口,您可以使用该接口并选择相应的队列来执行作业。示例代码如下: 1 2 3 4 5 6 7 8 9 def list_all_queues(dli_client):
BY:对全局进行单列或多列排序。与GROUP BY一起使用时,ORDER BY后面可以跟聚合函数。 注意事项 所排序的表必须是已经存在的,否则会出错。 示例 根据字段score对表student进行升序排序,并返回排序后的结果。 1 2 SELECT * FROM student ORDER BY score;
SELECT VIEW CONTENT 语法 SELECT column_name FROM view_name 描述 查询视图内容 SELECT * FROM test_view; 父主题: DQL 语法
在DLI控制台删除表 根据实际使用情况,您可以通过删除表。 注意事项 具有正在运行中的作业的数据库或者表不能删除。 管理员用户、表的所有者和具有删除表权限的用户可以删除表。 数据表删除后,将不可恢复,请谨慎操作。 删除表 删除表的入口有两个,分别在“数据管理”和“SQL编辑器”页面。 在“数据管理”页面删除表。
System.out.println(table); } } 查询表的分区信息(包含分区的创建和修改时间) DLI提供查询表分区信息的接口。您可以使用该接口查询数据库下表的分区信息(包括分区的创建和修改时间)。示例代码如下: 1 2 3 4 5 6 7
先依据num对表transactions进行分组,再利用HAVING子句对查询结果进行过滤,price与amount乘积的最大值大于5000的记录将被筛选出来,返回对应的num及price与amount乘积的最大值。 1 2 3 4 SELECT num, max(price*amount)
cast转换函数 HetuEngine会将数字和字符值隐式转换成正确的类型。HetuEngine不会把字符和数字类型相互转换。例如,一个查询期望得到一个varchar类型的值,HetuEngine不会自动将bigint类型的值转换为varchar类型。 如果有必要,可以将值显式转换为指定类型。
println("delete db " + dbName); } 含表的数据库不能直接删除,请先删除数据库的表再删除数据库。 数据库删除后,将不可恢复,请谨慎操作。 查询所有数据库 DLI提供查询数据库列表接口,您可以使用该接口查询当前已创建的数据库列表。示例代码如下: 1 2 3 4 5 6 7