将参数作为表达式传递到json查询模板的poster中



大家好,

我正在尝试在poster中传递参数以运行一些查询基本上是hive/sql查询的模板查询模板)从邮递员传递要执行的参数看起来像

 [ 
 {   
 "templateId":  "TemplateTable",
 "description": "TemplateTable", 
 "statements":   [ "set hive.exec.dynamic.partition.mode=nonstrict",
 "DROP VIEW IF EXISTS TemplateTable",
 "CREATE VIEW TemplateTableAS
     SELECT
         /*+ MAPJOIN(m) */
         i.base_time_stamp as timestamp_utc,
         CAST(regexp_extract(i.context, ';c/4/([0-9]+)' , 1) AS INT) as source_id,
         nw_name as network,
         @{day} as day
     FROM  Table1 m
     JOIN  Table2 i ON (CAST(regexp_extract(i.context, ';c/4/([0-9]+)' , 1) AS INT) = m.source_id)"  ],
"parameters":
    [
    {"name": "day", "required": true,  "description": "day can be any day of the week with numeric codes"}
    ]
}
]

=================================================

在邮差:

{"templateId":"TemplateTable","parameters":{"day":"CASEfrom_unixtime(unix_timestamp(起始时间),'EEE')何时"周一"然后"01|Mon"何时"周二"然后"02|周二"何时"Wed"然后"03| Wed"当"星期四"然后"04 |星期四"何时"周五"然后"05 |周五"
何时"周六"然后"06|Sat"当"太阳"然后"07 |太阳"END"}}

即使它没有给出任何错误消息,也不会创建首先在数据库中查看)如果有人能指出如何使用表达式,如上面的情况,将作为参数传递第二)如果有人能提供一些有用的链接,显示参数在邮递员中作为大表情传递,这将非常有帮助。谢谢

您的问题有点模糊,但为了POST JSON,您显然应该确保在谓词下拉列表中选择了正确的HTTP谓词。然后单击原始选项卡(这是左边的第三个选项卡,分别位于表单数据和x-www-form-urlencoded之后)。从这里,您可以粘贴整个JSON内容。确保您选择了正确的内容类型(在本例中为application/json)。或者你可以去二进制标签,我相信上传一个文件。不过,我通常会在原始部分粘贴JSON,所以我不能100%确定这部分是如何工作的。

至于数据库中没有显示的数据,这是特定于应用程序的,如果没有更多细节,我在这方面无能为力。

最新更新