You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将基于StatementBuilder的PQL查询转换为JSON格式

PQL(发布商查询语言)转JSON实现方案

你这段是广告平台客户端库中StatementBuilder构造的查询对象,转接口要求的JSON格式直接按PQL的语句、绑定参数两个核心部分映射即可,不需要复杂的转换逻辑。

首先梳理你当前代码对应的查询逻辑:

  • 显式声明的过滤条件:CUSTOM_CRITERIA LIKE '%permutive'
  • 预绑定的参数:键为orderId,值为传入的orderId变量

转换后的标准JSON结构

直接按照PQL接口的通用参数格式拼接即可:

{
  "query": "WHERE CUSTOM_CRITERIA LIKE '%permutive' AND ORDER_ID = :orderId",
  "values": [
    {
      "key": "orderId",
      "value": {
        "xsi:type": "NumberValue",
        "value": "替换为你代码里实际传入的orderId变量值"
      }
    }
  ]
}

注意事项

  • 你当前贴的代码里只调用了.withBindVariableValue("orderId", orderId),但没有在where条件里写ORDER_ID = :orderId的匹配规则,绑定参数不会自动追加到查询语句里,转换前先核对下是不是漏写了orderId对应的过滤条件,如果确实不需要按orderId过滤,直接删掉values里的对应参数,query字段保留WHERE CUSTOM_CRITERIA LIKE '%permutive'就行
  • 绑定值的xsi:type要和字段实际类型匹配:ID类数值字段统一用NumberValue,字符串字段用TextValue,布尔值用BooleanValue,类型传错会直接触发接口参数校验错误
  • 如果是调用v2022及之后版本的Ad Manager API,上述JSON结构不需要调整,直接传即可;低版本如果要求传完整Statement对象,按需补全limit、offset分页字段就行,核心的query和values结构不变

内容的提问来源于stack exchange,提问作者Lakshmi_N

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 12:15:27