拾穗数据工作室SQL 评测报告与证据

案例记录 case-run-00127

运行 #17/basic_filter_sort

基础筛选与排序

查询 2026-01-01 起已完成订单,输出 order_id、customer_name、order_date、total_amount,并按 total_amount 降序、order_id 升序。

运行信息

以下字段来自本次运行的冻结记录。

run#17
case run#127
attempt1
statuscompleted
token total18,345
estimated cost不可估算
model generation未记录
SQL execution360ms
adaptercodex_cli
response modetext
requested modelgpt-5.6-luna
resolved modelgpt-5.6-luna
provider request id未提供
started2026年8月29日 22:46
finished2026年8月29日 22:47
suite hash5b5d98876ea35114f18ce6dfa48cc9800d88b6baba80d311b2f52552a38b31af

模型输入

显示本次实际保存的完整 Prompt。

你是 Text-to-SQL 数据分析与数据开发生成器。先形成简洁、可审计的结构化查询方案,再生成完成问题所需的 SQL;不要输出隐藏推理。

方言与安全规则:
Use DuckDB SQL. Return exactly one read-only query. Do not access files, URLs, extensions, or schemas outside the supplied tables.

数据库结构:
{"semantic_relationships":[{"cardinality":"many_to_one","from_entity":"order","sql_on":"fact_orders.customer_id = dim_customers.customer_id","to_entity":"customer"},{"cardinality":"many_to_one","from_entity":"order","sql_on":"fact_orders.channel_id = dim_channels.channel_id","to_entity":"channel"},{"cardinality":"many_to_one","from_entity":"order_item","sql_on":"fact_order_items.order_id = fact_orders.order_id","to_entity":"order"},{"cardinality":"many_to_one","from_entity":"order_item","sql_on":"fact_order_items.product_id = dim_products.product_id","to_entity":"product"},{"cardinality":"many_to_one","from_entity":"payment","sql_on":"fact_payments.order_id = fact_orders.order_id","to_entity":"order"},{"cardinality":"many_to_one","from_entity":"return","sql_on":"fact_returns.order_id = fact_order_items.order_id AND fact_returns.line_no = fact_order_items.line_no","to_entity":"order_item"}],"tables":[{"columns":[{"data_type":"BIGINT","name":"channel_id","nullable":false},{"data_type":"VARCHAR","name":"channel_name","nullable":false},{"data_type":"VARCHAR","name":"channel_type","nullable":false}],"foreign_keys":[],"name":"dim_channels","primary_key":["channel_id"]},{"columns":[{"data_type":"BIGINT","name":"customer_id","nullable":false},{"data_type":"VARCHAR","name":"customer_name","nullable":false},{"data_type":"VARCHAR","name":"city","nullable":true},{"data_type":"DATE","name":"signup_date","nullable":false},{"data_type":"VARCHAR","name":"segment","nullable":false}],"foreign_keys":[],"name":"dim_customers","primary_key":["customer_id"]},{"columns":[{"data_type":"BIGINT","name":"product_id","nullable":false},{"data_type":"VARCHAR","name":"product_name","nullable":false},{"data_type":"VARCHAR","name":"category","nullable":false},{"data_type":"VARCHAR","name":"brand","nullable":false},{"data_type":"DECIMAL(14,2)","name":"list_price","nullable":false}],"foreign_keys":[],"name":"dim_products","primary_key":["product_id"]},{"columns":[{"data_type":"BIGINT","name":"order_id","nullable":false},{"data_type":"BIGINT","name":"line_no","nullable":false},{"data_type":"BIGINT","name":"product_id","nullable":false},{"data_type":"BIGINT","name":"quantity","nullable":false},{"data_type":"DECIMAL(14,2)","name":"unit_price","nullable":false},{"data_type":"DECIMAL(14,2)","name":"discount_amount","nullable":false}],"foreign_keys":[{"columns":["order_id"],"referenced_columns":["order_id"],"referenced_table":"fact_orders"},{"columns":["product_id"],"referenced_columns":["product_id"],"referenced_table":"dim_products"}],"name":"fact_order_items","primary_key":["order_id","line_no"]},{"columns":[{"data_type":"BIGINT","name":"order_id","nullable":false},{"data_type":"BIGINT","name":"customer_id","nullable":false},{"data_type":"BIGINT","name":"channel_id","nullable":false},{"data_type":"DATE","name":"order_date","nullable":false},{"data_type":"VARCHAR","name":"status","nullable":false},{"data_type":"DECIMAL(14,2)","name":"total_amount","nullable":false}],"foreign_keys":[{"columns":["customer_id"],"referenced_columns":["customer_id"],"referenced_table":"dim_customers"},{"columns":["channel_id"],"referenced_columns":["channel_id"],"referenced_table":"dim_channels"}],"name":"fact_orders","primary_key":["order_id"]},{"columns":[{"data_type":"BIGINT","name":"payment_id","nullable":false},{"data_type":"BIGINT","name":"order_id","nullable":false},{"data_type":"TIMESTAMP","name":"paid_at","nullable":false},{"data_type":"VARCHAR","name":"payment_method","nullable":false},{"data_type":"DECIMAL(14,2)","name":"amount","nullable":false},{"data_type":"VARCHAR","name":"status","nullable":false}],"foreign_keys":[{"columns":["order_id"],"referenced_columns":["order_id"],"referenced_table":"fact_orders"}],"name":"fact_payments","primary_key":["payment_id"]},{"columns":[{"data_type":"BIGINT","name":"return_id","nullable":false},{"data_type":"BIGINT","name":"order_id","nullable":false},{"data_type":"BIGINT","name":"line_no","nullable":false},{"data_type":"TIMESTAMP","name":"returned_at","nullable":false},{"data_type":"BIGINT","name":"return_qty","nullable":false},{"data_type":"DECIMAL(14,2)","name":"refund_amount","nullable":false},{"data_type":"VARCHAR","name":"reason","nullable":true}],"foreign_keys":[{"columns":["order_id","line_no"],"referenced_columns":["order_id","line_no"],"referenced_table":"fact_order_items"}],"name":"fact_returns","primary_key":["return_id"]}]}

语义层与业务口径:
{"business_rules":["完成订单仅指 fact_orders.status = 'completed'。","净销售额为 quantity * unit_price - discount_amount。","paid、refunded、failed 金额只按 fact_payments.status 分类。","退货率为完成订单的 returned_qty / sold_qty,售出数量仅含完成订单。","月份按 UTC Gregorian calendar 计算。","订单头 total_amount 应等于订单行净额汇总,差异视为数据质量异常。"],"dimensions":[{"data_type":"VARCHAR","description":"客户分群","expression":"dim_customers.segment","name":"customer_segment"},{"data_type":"VARCHAR","description":"商品品类","expression":"dim_products.category","name":"product_category"},{"data_type":"VARCHAR","description":"渠道类型","expression":"dim_channels.channel_type","name":"channel_type"},{"data_type":"VARCHAR","description":"UTC Gregorian 月份","expression":"strftime(fact_orders.order_date, '%Y-%m')","name":"order_month"}],"entities":[{"description":"客户主数据","grain":"每行一个客户","name":"customer","primary_key":["customer_id"],"table":"dim_customers"},{"description":"商品主数据","grain":"每行一个商品","name":"product","primary_key":["product_id"],"table":"dim_products"},{"description":"渠道主数据","grain":"每行一个渠道","name":"channel","primary_key":["channel_id"],"table":"dim_channels"},{"description":"订单头","grain":"每行一个订单","name":"order","primary_key":["order_id"],"table":"fact_orders"},{"description":"订单行","grain":"每行一个订单商品行","name":"order_item","primary_key":["order_id","line_no"],"table":"fact_order_items"},{"description":"支付尝试","grain":"每行一笔支付","name":"payment","primary_key":["payment_id"],"table":"fact_payments"},{"description":"退货记录","grain":"每行一条订单行退货","name":"return","primary_key":["return_id"],"table":"fact_returns"}],"metrics":[{"description":"已完成订单数","expression":"COUNT(DISTINCT CASE WHEN fact_orders.status = 'completed' THEN fact_orders.order_id END)","filters":["fact_orders.status = 'completed'"],"grain":"聚合","name":"completed_order_count"},{"description":"完成订单商品行净销售额","expression":"SUM(fact_order_items.quantity * fact_order_items.unit_price - fact_order_items.discount_amount)","filters":["fact_orders.status = 'completed'"],"grain":"聚合","name":"net_revenue"},{"description":"成功支付金额","expression":"SUM(CASE WHEN fact_payments.status = 'paid' THEN fact_payments.amount ELSE 0 END)","filters":[],"grain":"聚合","name":"paid_amount"},{"description":"退款状态支付金额","expression":"SUM(CASE WHEN fact_payments.status = 'refunded' THEN fact_payments.amount ELSE 0 END)","filters":[],"grain":"聚合","name":"refunded_amount"},{"description":"失败支付金额","expression":"SUM(CASE WHEN fact_payments.status = 'failed' THEN fact_payments.amount ELSE 0 END)","filters":[],"grain":"聚合","name":"failed_amount"},{"description":"完成订单退货数量除以售出数量","expression":"SUM(fact_returns.return_qty) / SUM(fact_order_items.quantity)","filters":["fact_orders.status = 'completed'"],"grain":"聚合","name":"return_rate"}],"relationships":[{"cardinality":"many_to_one","from_entity":"order","sql_on":"fact_orders.customer_id = dim_customers.customer_id","to_entity":"customer"},{"cardinality":"many_to_one","from_entity":"order","sql_on":"fact_orders.channel_id = dim_channels.channel_id","to_entity":"channel"},{"cardinality":"many_to_one","from_entity":"order_item","sql_on":"fact_order_items.order_id = fact_orders.order_id","to_entity":"order"},{"cardinality":"many_to_one","from_entity":"order_item","sql_on":"fact_order_items.product_id = dim_products.product_id","to_entity":"product"},{"cardinality":"many_to_one","from_entity":"payment","sql_on":"fact_payments.order_id = fact_orders.order_id","to_entity":"order"},{"cardinality":"many_to_one","from_entity":"return","sql_on":"fact_returns.order_id = fact_order_items.order_id AND fact_returns.line_no = fact_order_items.line_no","to_entity":"order_item"}]}

问题:
查询 2026-01-01 起已完成订单,输出 order_id、customer_name、order_date、total_amount,并按 total_amount 降序、order_id 升序。

规划要求:
plan 只记录输出粒度、数据源、连接、过滤、指标、执行步骤和风险检查;每项保持简短。
SQL 必须严格实现该 plan,并遵循语义层业务口径。
summary 只概括最终做法,assumptions 只列无法由上下文确定的必要假设。
输出必须严格匹配此 JSON Schema:
{"$defs":{"QueryPlan":{"additionalProperties":false,"properties":{"filters":{"items":{"type":"string"},"title":"Filters","type":"array"},"grain":{"title":"Grain","type":"string"},"joins":{"items":{"type":"string"},"title":"Joins","type":"array"},"metrics":{"items":{"type":"string"},"title":"Metrics","type":"array"},"risks":{"items":{"type":"string"},"title":"Risks","type":"array"},"sources":{"items":{"type":"string"},"title":"Sources","type":"array"},"steps":{"items":{"type":"string"},"title":"Steps","type":"array"}},"required":["grain","sources","joins","filters","metrics","steps","risks"],"title":"QueryPlan","type":"object"}},"additionalProperties":false,"properties":{"assumptions":{"items":{"type":"string"},"title":"Assumptions","type":"array"},"plan":{"$ref":"#/$defs/QueryPlan"},"sql":{"title":"Sql","type":"string"},"summary":{"title":"Summary","type":"string"}},"required":["plan","sql","summary","assumptions"],"title":"GenerationOutput","type":"object"}

调用请求(1)

按事件序号排列;密钥和 Authorization 已移除。

历史证据边界:完整 Prompt 已保存,但这次 codex_cli 记录没有保存底层 HTTP 报文或 CLI 参数。本站不会把推测内容伪装成原始请求;未来运行会在 provider.requested 中记录脱敏后的完整调用信封。

请求 #1SEQ 5
{
  "isolation_policy_hash": "747b1ca3decdc24da64208265966caf487d37482255536a35fa93e138bee8f77",
  "status": "running"
}

模型输出

分别显示原始响应、解析结果和 SQL。

原始响应 raw_output
{"plan":{"grain":"每行一个订单","sources":["fact_orders","dim_customers"],"joins":["fact_orders.customer_id = dim_customers.customer_id"],"filters":["fact_orders.status = 'completed'","fact_orders.order_date >= DATE '2026-01-01'"],"metrics":["输出订单头 total_amount"],"steps":["筛选完成订单及日期范围","连接客户维度获取 customer_name","按 total_amount 降序、order_id 升序排序"],"risks":["仅使用订单头 total_amount,不重复汇总订单行"]},"sql":"SELECT\n    o.order_id,\n    c.customer_name,\n    o.order_date,\n    o.total_amount\nFROM fact_orders AS o\nJOIN dim_customers AS c\n    ON o.customer_id = c.customer_id\nWHERE o.status = 'completed'\n  AND o.order_date >= DATE '2026-01-01'\nORDER BY o.total_amount DESC, o.order_id ASC;","summary":"筛选 2026-01-01 起的已完成订单,连接客户名称,输出订单信息并按订单金额降序、订单号升序排列。","assumptions":[]}
结构化查询方案 plan
{
  "filters": [
    "fact_orders.status = 'completed'",
    "fact_orders.order_date >= DATE '2026-01-01'"
  ],
  "grain": "每行一个订单",
  "joins": [
    "fact_orders.customer_id = dim_customers.customer_id"
  ],
  "metrics": [
    "输出订单头 total_amount"
  ],
  "risks": [
    "仅使用订单头 total_amount,不重复汇总订单行"
  ],
  "sources": [
    "fact_orders",
    "dim_customers"
  ],
  "steps": [
    "筛选完成订单及日期范围",
    "连接客户维度获取 customer_name",
    "按 total_amount 降序、order_id 升序排序"
  ]
}
模型生成 SQL
SELECT
    o.order_id,
    c.customer_name,
    o.order_date,
    o.total_amount
FROM fact_orders AS o
JOIN dim_customers AS c
    ON o.customer_id = c.customer_id
WHERE o.status = 'completed'
  AND o.order_date >= DATE '2026-01-01'
ORDER BY o.total_amount DESC, o.order_id ASC;
规范化 SQL
SELECT
  o.order_id,
  c.customer_name,
  o.order_date,
  o.total_amount
FROM fact_orders AS o
JOIN dim_customers AS c
  ON o.customer_id = c.customer_id
WHERE
  o.status = 'completed' AND o.order_date >= CAST('2026-01-01' AS DATE)
ORDER BY
  o.total_amount DESC,
  o.order_id ASC
Token 与耗时
{
  "token_usage": {
    "cache_write_input_tokens": 0,
    "cached_input_tokens": 0,
    "input_tokens": 17999,
    "output_tokens": 346,
    "reasoning_output_tokens": 85
  },
  "generation_ms": null,
  "execution_ms": 359.98508300690446
}

评分结果

包含评分明细、参考 SQL、结构要求、比较规则和结果差异。

评分明细 score
{
  "ast_rules": [],
  "column_count": 5,
  "column_names": 5,
  "execution": 10,
  "ordering": 10,
  "protocol": 5,
  "read_only_ast": 5,
  "row_f1": 45,
  "sql_capability": 15,
  "total": 100
}
参考 SQL
SELECT o.order_id, c.customer_name, o.order_date, o.total_amount FROM fact_orders o JOIN dim_customers c ON c.customer_id = o.customer_id WHERE o.status = 'completed' AND o.order_date >= DATE '2026-01-01' ORDER BY o.total_amount DESC, o.order_id ASC
AST 结构要求
[]
结果比较规则
{
  "abs_tolerance": "0.005",
  "decimal_scale": 2,
  "duplicate_policy": "multiset",
  "max_rows": 10000,
  "rel_tolerance": "0",
  "row_order_significant": true
}
期望结果预览
{
  "columns": [
    {
      "name": "order_id",
      "type": "BIGINT"
    },
    {
      "name": "customer_name",
      "type": "VARCHAR"
    },
    {
      "name": "order_date",
      "type": "DATE"
    },
    {
      "name": "total_amount",
      "type": "DECIMAL(14,2)"
    }
  ],
  "digest": "d780841b19b0607647e55663cbe9eab3c35ff2b55eba3e78334a7fb27e22c268",
  "row_count": 162,
  "rows": [
    [
      562,
      "客户-059",
      "2026-01-13",
      "3278.25"
    ],
    [
      157,
      "客户-002",
      "2026-03-26",
      "3065.50"
    ],
    [
      497,
      "客户-078",
      "2026-05-26",
      "3039.75"
    ],
    [
      529,
      "客户-095",
      "2026-04-21",
      "3037.25"
    ],
    [
      315,
      "客户-065",
      "2026-03-11",
      "3006.75"
    ],
    [
      287,
      "客户-080",
      "2026-03-08",
      "2831.00"
    ],
    [
      93,
      "客户-044",
      "2026-03-17",
      "2775.50"
    ],
    [
      36,
      "客户-065",
      "2026-02-15",
      "2756.25"
    ],
    [
      44,
      "客户-059",
      "2026-01-06",
      "2743.00"
    ],
    [
      238,
      "客户-014",
      "2026-06-03",
      "2697.00"
    ],
    [
      255,
      "客户-017",
      "2026-04-24",
      "2417.25"
    ],
    [
      206,
      "客户-063",
      "2026-06-30",
      "2372.00"
    ],
    [
      503,
      "客户-044",
      "2026-02-26",
      "2363.25"
    ],
    [
      38,
      "客户-095",
      "2026-05-07",
      "2307.75"
    ],
    [
      144,
      "客户-038",
      "2026-04-18",
      "2272.25"
    ],
    [
      526,
      "客户-027",
      "2026-06-28",
      "2269.75"
    ],
    [
      368,
      "客户-045",
      "2026-02-13",
      "2257.25"
    ],
    [
      105,
      "客户-019",
      "2026-01-19",
      "2244.75"
    ],
    [
      356,
      "客户-044",
      "2026-04-03",
      "2234.00"
    ],
    [
      202,
      "客户-109",
      "2026-06-15",
      "2177.25"
    ],
    [
      27,
      "客户-085",
      "2026-03-16",
      "2174.50"
    ],
    [
      597,
      "客户-094",
      "2026-06-04",
      "2167.75"
    ],
    [
      272,
      "客户-032",
      "2026-01-27",
      "2114.75"
    ],
    [
      258,
      "客户-082",
      "2026-04-13",
      "2108.00"
    ],
    [
      62,
      "客户-050",
      "2026-02-18",
      "2106.25"
    ],
    [
      159,
      "客户-034",
      "2026-05-04",
      "2060.50"
    ],
    [
      279,
      "客户-040",
      "2026-04-02",
      "2018.50"
    ],
    [
      98,
      "客户-021",
      "2026-03-31",
      "1982.25"
    ],
    [
      68,
      "客户-013",
      "2026-01-05",
      "1975.75"
    ],
    [
      266,
      "客户-058",
      "2026-06-01",
      "1969.00"
    ],
    [
      172,
      "客户-062",
      "2026-03-07",
      "1968.00"
    ],
    [
      298,
      "客户-094",
      "2026-01-09",
      "1951.25"
    ],
    [
      63,
      "客户-094",
      "2026-01-28",
      "1911.25"
    ],
    [
      523,
      "客户-060",
      "2026-06-25",
      "1890.50"
    ],
    [
      57,
      "客户-105",
      "2026-03-05",
      "1888.25"
    ],
    [
      73,
      "客户-046",
      "2026-01-20",
      "1856.50"
    ],
    [
      393,
      "客户-006",
      "2026-01-29",
      "1809.25"
    ],
    [
      129,
      "客户-093",
      "2026-05-25",
      "1798.00"
    ],
    [
      192,
      "客户-076",
      "2026-04-24",
      "1793.75"
    ],
    [
      578,
      "客户-104",
      "2026-05-25",
      "1791.00"
    ],
    [
      388,
      "客户-015",
      "2026-02-24",
      "1789.75"
    ],
    [
      49,
      "客户-014",
      "2026-06-20",
      "1789.00"
    ],
    [
      405,
      "客户-079",
      "2026-06-08",
      "1774.50"
    ],
    [
      95,
      "客户-015",
      "2026-05-20",
      "1770.50"
    ],
    [
      422,
      "客户-079",
      "2026-05-01",
      "1758.00"
    ],
    [
      459,
      "客户-106",
      "2026-05-20",
      "1756.75"
    ],
    [
      177,
      "客户-093",
      "2026-01-18",
      "1732.50"
    ],
    [
      55,
      "客户-069",
      "2026-06-04",
      "1714.25"
    ],
    [
      229,
      "客户-012",
      "2026-03-11",
      "1696.75"
    ],
    [
      138,
      "客户-064",
      "2026-01-18",
      "1695.25"
    ],
    [
      296,
      "客户-048",
      "2026-03-18",
      "1692.00"
    ],
    [
      193,
      "客户-067",
      "2026-05-05",
      "1683.75"
    ],
    [
      369,
      "客户-035",
      "2026-05-10",
      "1667.50"
    ],
    [
      22,
      "客户-088",
      "2026-03-29",
      "1656.25"
    ],
    [
      486,
      "客户-020",
      "2026-03-12",
      "1655.50"
    ],
    [
      216,
      "客户-057",
      "2026-06-24",
      "1628.00"
    ],
    [
      305,
      "客户-053",
      "2026-01-12",
      "1621.75"
    ],
    [
      508,
      "客户-012",
      "2026-01-07",
      "1584.25"
    ],
    [
      148,
      "客户-095",
      "2026-01-16",
      "1496.75"
    ],
    [
      399,
      "客户-109",
      "2026-05-03",
      "1493.00"
    ],
    [
      267,
      "客户-017",
      "2026-05-15",
      "1489.00"
    ],
    [
      103,
      "客户-095",
      "2026-05-29",
      "1464.25"
    ],
    [
      343,
      "客户-084",
      "2026-05-02",
      "1462.50"
    ],
    [
      478,
      "客户-096",
      "2026-02-04",
      "1415.00"
    ],
    [
      567,
      "客户-048",
      "2026-02-07",
      "1409.50"
    ],
    [
      52,
      "客户-090",
      "2026-01-06",
      "1376.75"
    ],
    [
      243,
      "客户-092",
      "2026-06-09",
      "1371.50"
    ],
    [
      339,
      "客户-081",
      "2026-02-01",
      "1368.75"
    ],
    [
      537,
      "客户-093",
      "2026-04-25",
      "1363.25"
    ],
    [
      594,
      "客户-041",
      "2026-05-30",
      "1345.50"
    ],
    [
      463,
      "客户-107",
      "2026-02-02",
      "1342.25"
    ],
    [
      58,
      "客户-073",
      "2026-04-17",
      "1334.25"
    ],
    [
      357,
      "客户-019",
      "2026-01-06",
      "1318.50"
    ],
    [
      195,
      "客户-029",
      "2026-01-09",
      "1309.50"
    ],
    [
      64,
      "客户-081",
      "2026-01-09",
      "1259.25"
    ],
    [
      367,
      "客户-089",
      "2026-05-08",
      "1258.25"
    ],
    [
      524,
      "客户-070",
      "2026-05-03",
      "1255.00"
    ],
    [
      583,
      "客户-049",
      "2026-02-23",
      "1231.00"
    ],
    [
      316,
      "客户-105",
      "2026-05-08",
      "1201.75"
    ],
    [
      263,
      "客户-004",
      "2026-06-18",
      "1199.00"
    ],
    [
      900001,
      "客户-001",
      "2026-06-30",
      "1189.00"
    ],
    [
      384,
      "客户-052",
      "2026-02-10",
      "1175.75"
    ],
    [
      116,
      "客户-010",
      "2026-03-13",
      "1156.25"
    ],
    [
      244,
      "客户-072",
      "2026-01-20",
      "1145.25"
    ],
    [
      416,
      "客户-017",
      "2026-05-03",
      "1138.75"
    ],
    [
      88,
      "客户-098",
      "2026-02-17",
      "1136.25"
    ],
    [
      359,
      "客户-019",
      "2026-01-08",
      "1058.00"
    ],
    [
      256,
      "客户-036",
      "2026-06-11",
      "1045.50"
    ],
    [
      516,
      "客户-005",
      "2026-03-26",
      "1009.75"
    ],
    [
      75,
      "客户-001",
      "2026-04-14",
      "988.75"
    ],
    [
      253,
      "客户-074",
      "2026-01-17",
      "971.50"
    ],
    [
      376,
      "客户-011",
      "2026-06-03",
      "963.50"
    ],
    [
      559,
      "客户-057",
      "2026-04-06",
      "946.75"
    ],
    [
      74,
      "客户-068",
      "2026-05-29",
      "928.25"
    ],
    [
      382,
      "客户-087",
      "2026-01-27",
      "920.75"
    ],
    [
      467,
      "客户-102",
      "2026-05-18",
      "918.75"
    ],
    [
      539,
      "客户-062",
      "2026-04-28",
      "911.50"
    ],
    [
      309,
      "客户-093",
      "2026-02-03",
      "905.50"
    ],
    [
      464,
      "客户-053",
      "2026-02-12",
      "822.75"
    ],
    [
      176,
      "客户-018",
      "2026-01-04",
      "804.25"
    ],
    [
      363,
      "客户-030",
      "2026-04-06",
      "801.00"
    ],
    [
      149,
      "客户-013",
      "2026-03-08",
      "786.25"
    ],
    [
      498,
      "客户-065",
      "2026-01-23",
      "759.50"
    ],
    [
      582,
      "客户-100",
      "2026-06-25",
      "744.00"
    ],
    [
      84,
      "客户-041",
      "2026-04-22",
      "741.25"
    ],
    [
      66,
      "客户-090",
      "2026-02-25",
      "710.00"
    ],
    [
      412,
      "客户-074",
      "2026-03-23",
      "701.75"
    ],
    [
      169,
      "客户-013",
      "2026-03-09",
      "685.75"
    ],
    [
      32,
      "客户-072",
      "2026-06-21",
      "680.00"
    ],
    [
      457,
      "客户-029",
      "2026-04-29",
      "662.50"
    ],
    [
      69,
      "客户-105",
      "2026-01-19",
      "604.75"
    ],
    [
      37,
      "客户-105",
      "2026-05-09",
      "597.00"
    ],
    [
      314,
      "客户-025",
      "2026-05-24",
      "548.00"
    ],
    [
      168,
      "客户-024",
      "2026-01-10",
      "543.25"
    ],
    [
      484,
      "客户-002",
      "2026-05-02",
      "531.75"
    ],
    [
      592,
      "客户-080",
      "2026-06-20",
      "530.50"
    ],
    [
      517,
      "客户-041",
      "2026-03-18",
      "512.50"
    ],
    [
      185,
      "客户-073",
      "2026-04-06",
      "499.75"
    ],
    [
      209,
      "客户-012",
      "2026-03-18",
      "496.50"
    ],
    [
      286,
      "客户-072",
      "2026-02-16",
      "486.75"
    ],
    [
      108,
      "客户-081",
      "2026-03-21",
      "482.00"
    ],
    [
      487,
      "客户-002",
      "2026-01-29",
      "474.25"
    ],
    [
      85,
      "客户-001",
      "2026-02-03",
      "462.75"
    ],
    [
      507,
      "客户-086",
      "2026-05-18",
      "453.00"
    ],
    [
      505,
      "客户-108",
      "2026-04-10",
      "444.00"
    ],
    [
      219,
      "客户-103",
      "2026-06-10",
      "421.25"
    ],
    [
      164,
      "客户-012",
      "2026-03-07",
      "416.75"
    ],
    [
      109,
      "客户-076",
      "2026-02-11",
      "415.50"
    ],
    [
      318,
      "客户-015",
      "2026-02-13",
      "412.75"
    ],
    [
      394,
      "客户-016",
      "2026-03-19",
      "378.75"
    ],
    [
      118,
      "客户-048",
      "2026-06-13",
      "357.00"
    ],
    [
      353,
      "客户-062",
      "2026-06-26",
      "354.50"
    ],
    [
      302,
      "客户-069",
      "2026-05-03",
      "341.50"
    ],
    [
      333,
      "客户-077",
      "2026-04-11",
      "333.50"
    ],
    [
      439,
      "客户-060",
      "2026-05-26",
      "333.50"
    ],
    [
      288,
      "客户-060",
      "2026-03-09",
      "322.50"
    ],
    [
      596,
      "客户-009",
      "2026-03-30",
      "313.50"
    ],
    [
      175,
      "客户-010",
      "2026-04-11",
      "312.00"
    ],
    [
      158,
      "客户-012",
      "2026-03-24",
      "310.50"
    ],
    [
      555,
      "客户-064",
      "2026-04-03",
      "310.00"
    ],
    [
      322,
      "客户-094",
      "2026-01-06",
      "256.50"
    ],
    [
      485,
      "客户-021",
      "2026-02-15",
      "245.75"
    ],
    [
      205,
      "客户-027",
      "2026-04-22",
      "230.00"
    ],
    [
      214,
      "客户-052",
      "2026-01-17",
      "215.75"
    ],
    [
      56,
      "客户-037",
      "2026-04-30",
      "198.75"
    ],
    [
      125,
      "客户-064",
      "2026-02-20",
      "192.00"
    ],
    [
      226,
      "客户-089",
      "2026-03-31",
      "180.50"
    ],
    [
      173,
      "客户-013",
      "2026-06-05",
      "174.50"
    ],
    [
      76,
      "客户-024",
      "2026-03-12",
      "165.00"
    ],
    [
      385,
      "客户-019",
      "2026-04-24",
      "164.75"
    ],
    [
      579,
      "客户-083",
      "2026-05-28",
      "135.75"
    ],
    [
      188,
      "客户-053",
      "2026-05-07",
      "134.00"
    ],
    [
      139,
      "客户-005",
      "2026-02-05",
      "133.00"
    ],
    [
      7,
      "客户-020",
      "2026-01-09",
      "131.50"
    ],
    [
      354,
      "客户-092",
      "2026-02-28",
      "111.75"
    ],
    [
      900002,
      "客户-001",
      "2026-06-30",
      "100.00"
    ],
    [
      900004,
      "客户-001",
      "2026-06-30",
      "100.00"
    ],
    [
      522,
      "客户-102",
      "2026-06-30",
      "70.50"
    ],
    [
      297,
      "客户-107",
      "2026-02-08",
      "65.75"
    ],
    [
      900003,
      "客户-001",
      "2026-06-30",
      "50.00"
    ],
    [
      515,
      "客户-079",
      "2026-03-26",
      "39.25"
    ],
    [
      348,
      "客户-004",
      "2026-05-21",
      "27.00"
    ]
  ]
}
实际结果预览
{
  "columns": [
    {
      "name": "order_id",
      "type": "BIGINT"
    },
    {
      "name": "customer_name",
      "type": "VARCHAR"
    },
    {
      "name": "order_date",
      "type": "DATE"
    },
    {
      "name": "total_amount",
      "type": "DECIMAL(14,2)"
    }
  ],
  "extra": [],
  "missing": [],
  "row_count": 162,
  "rows": [
    [
      562,
      "客户-059",
      "2026-01-13",
      "3278.25"
    ],
    [
      157,
      "客户-002",
      "2026-03-26",
      "3065.50"
    ],
    [
      497,
      "客户-078",
      "2026-05-26",
      "3039.75"
    ],
    [
      529,
      "客户-095",
      "2026-04-21",
      "3037.25"
    ],
    [
      315,
      "客户-065",
      "2026-03-11",
      "3006.75"
    ],
    [
      287,
      "客户-080",
      "2026-03-08",
      "2831.00"
    ],
    [
      93,
      "客户-044",
      "2026-03-17",
      "2775.50"
    ],
    [
      36,
      "客户-065",
      "2026-02-15",
      "2756.25"
    ],
    [
      44,
      "客户-059",
      "2026-01-06",
      "2743.00"
    ],
    [
      238,
      "客户-014",
      "2026-06-03",
      "2697.00"
    ],
    [
      255,
      "客户-017",
      "2026-04-24",
      "2417.25"
    ],
    [
      206,
      "客户-063",
      "2026-06-30",
      "2372.00"
    ],
    [
      503,
      "客户-044",
      "2026-02-26",
      "2363.25"
    ],
    [
      38,
      "客户-095",
      "2026-05-07",
      "2307.75"
    ],
    [
      144,
      "客户-038",
      "2026-04-18",
      "2272.25"
    ],
    [
      526,
      "客户-027",
      "2026-06-28",
      "2269.75"
    ],
    [
      368,
      "客户-045",
      "2026-02-13",
      "2257.25"
    ],
    [
      105,
      "客户-019",
      "2026-01-19",
      "2244.75"
    ],
    [
      356,
      "客户-044",
      "2026-04-03",
      "2234.00"
    ],
    [
      202,
      "客户-109",
      "2026-06-15",
      "2177.25"
    ],
    [
      27,
      "客户-085",
      "2026-03-16",
      "2174.50"
    ],
    [
      597,
      "客户-094",
      "2026-06-04",
      "2167.75"
    ],
    [
      272,
      "客户-032",
      "2026-01-27",
      "2114.75"
    ],
    [
      258,
      "客户-082",
      "2026-04-13",
      "2108.00"
    ],
    [
      62,
      "客户-050",
      "2026-02-18",
      "2106.25"
    ],
    [
      159,
      "客户-034",
      "2026-05-04",
      "2060.50"
    ],
    [
      279,
      "客户-040",
      "2026-04-02",
      "2018.50"
    ],
    [
      98,
      "客户-021",
      "2026-03-31",
      "1982.25"
    ],
    [
      68,
      "客户-013",
      "2026-01-05",
      "1975.75"
    ],
    [
      266,
      "客户-058",
      "2026-06-01",
      "1969.00"
    ],
    [
      172,
      "客户-062",
      "2026-03-07",
      "1968.00"
    ],
    [
      298,
      "客户-094",
      "2026-01-09",
      "1951.25"
    ],
    [
      63,
      "客户-094",
      "2026-01-28",
      "1911.25"
    ],
    [
      523,
      "客户-060",
      "2026-06-25",
      "1890.50"
    ],
    [
      57,
      "客户-105",
      "2026-03-05",
      "1888.25"
    ],
    [
      73,
      "客户-046",
      "2026-01-20",
      "1856.50"
    ],
    [
      393,
      "客户-006",
      "2026-01-29",
      "1809.25"
    ],
    [
      129,
      "客户-093",
      "2026-05-25",
      "1798.00"
    ],
    [
      192,
      "客户-076",
      "2026-04-24",
      "1793.75"
    ],
    [
      578,
      "客户-104",
      "2026-05-25",
      "1791.00"
    ],
    [
      388,
      "客户-015",
      "2026-02-24",
      "1789.75"
    ],
    [
      49,
      "客户-014",
      "2026-06-20",
      "1789.00"
    ],
    [
      405,
      "客户-079",
      "2026-06-08",
      "1774.50"
    ],
    [
      95,
      "客户-015",
      "2026-05-20",
      "1770.50"
    ],
    [
      422,
      "客户-079",
      "2026-05-01",
      "1758.00"
    ],
    [
      459,
      "客户-106",
      "2026-05-20",
      "1756.75"
    ],
    [
      177,
      "客户-093",
      "2026-01-18",
      "1732.50"
    ],
    [
      55,
      "客户-069",
      "2026-06-04",
      "1714.25"
    ],
    [
      229,
      "客户-012",
      "2026-03-11",
      "1696.75"
    ],
    [
      138,
      "客户-064",
      "2026-01-18",
      "1695.25"
    ],
    [
      296,
      "客户-048",
      "2026-03-18",
      "1692.00"
    ],
    [
      193,
      "客户-067",
      "2026-05-05",
      "1683.75"
    ],
    [
      369,
      "客户-035",
      "2026-05-10",
      "1667.50"
    ],
    [
      22,
      "客户-088",
      "2026-03-29",
      "1656.25"
    ],
    [
      486,
      "客户-020",
      "2026-03-12",
      "1655.50"
    ],
    [
      216,
      "客户-057",
      "2026-06-24",
      "1628.00"
    ],
    [
      305,
      "客户-053",
      "2026-01-12",
      "1621.75"
    ],
    [
      508,
      "客户-012",
      "2026-01-07",
      "1584.25"
    ],
    [
      148,
      "客户-095",
      "2026-01-16",
      "1496.75"
    ],
    [
      399,
      "客户-109",
      "2026-05-03",
      "1493.00"
    ],
    [
      267,
      "客户-017",
      "2026-05-15",
      "1489.00"
    ],
    [
      103,
      "客户-095",
      "2026-05-29",
      "1464.25"
    ],
    [
      343,
      "客户-084",
      "2026-05-02",
      "1462.50"
    ],
    [
      478,
      "客户-096",
      "2026-02-04",
      "1415.00"
    ],
    [
      567,
      "客户-048",
      "2026-02-07",
      "1409.50"
    ],
    [
      52,
      "客户-090",
      "2026-01-06",
      "1376.75"
    ],
    [
      243,
      "客户-092",
      "2026-06-09",
      "1371.50"
    ],
    [
      339,
      "客户-081",
      "2026-02-01",
      "1368.75"
    ],
    [
      537,
      "客户-093",
      "2026-04-25",
      "1363.25"
    ],
    [
      594,
      "客户-041",
      "2026-05-30",
      "1345.50"
    ],
    [
      463,
      "客户-107",
      "2026-02-02",
      "1342.25"
    ],
    [
      58,
      "客户-073",
      "2026-04-17",
      "1334.25"
    ],
    [
      357,
      "客户-019",
      "2026-01-06",
      "1318.50"
    ],
    [
      195,
      "客户-029",
      "2026-01-09",
      "1309.50"
    ],
    [
      64,
      "客户-081",
      "2026-01-09",
      "1259.25"
    ],
    [
      367,
      "客户-089",
      "2026-05-08",
      "1258.25"
    ],
    [
      524,
      "客户-070",
      "2026-05-03",
      "1255.00"
    ],
    [
      583,
      "客户-049",
      "2026-02-23",
      "1231.00"
    ],
    [
      316,
      "客户-105",
      "2026-05-08",
      "1201.75"
    ],
    [
      263,
      "客户-004",
      "2026-06-18",
      "1199.00"
    ],
    [
      900001,
      "客户-001",
      "2026-06-30",
      "1189.00"
    ],
    [
      384,
      "客户-052",
      "2026-02-10",
      "1175.75"
    ],
    [
      116,
      "客户-010",
      "2026-03-13",
      "1156.25"
    ],
    [
      244,
      "客户-072",
      "2026-01-20",
      "1145.25"
    ],
    [
      416,
      "客户-017",
      "2026-05-03",
      "1138.75"
    ],
    [
      88,
      "客户-098",
      "2026-02-17",
      "1136.25"
    ],
    [
      359,
      "客户-019",
      "2026-01-08",
      "1058.00"
    ],
    [
      256,
      "客户-036",
      "2026-06-11",
      "1045.50"
    ],
    [
      516,
      "客户-005",
      "2026-03-26",
      "1009.75"
    ],
    [
      75,
      "客户-001",
      "2026-04-14",
      "988.75"
    ],
    [
      253,
      "客户-074",
      "2026-01-17",
      "971.50"
    ],
    [
      376,
      "客户-011",
      "2026-06-03",
      "963.50"
    ],
    [
      559,
      "客户-057",
      "2026-04-06",
      "946.75"
    ],
    [
      74,
      "客户-068",
      "2026-05-29",
      "928.25"
    ],
    [
      382,
      "客户-087",
      "2026-01-27",
      "920.75"
    ],
    [
      467,
      "客户-102",
      "2026-05-18",
      "918.75"
    ],
    [
      539,
      "客户-062",
      "2026-04-28",
      "911.50"
    ],
    [
      309,
      "客户-093",
      "2026-02-03",
      "905.50"
    ],
    [
      464,
      "客户-053",
      "2026-02-12",
      "822.75"
    ],
    [
      176,
      "客户-018",
      "2026-01-04",
      "804.25"
    ],
    [
      363,
      "客户-030",
      "2026-04-06",
      "801.00"
    ],
    [
      149,
      "客户-013",
      "2026-03-08",
      "786.25"
    ],
    [
      498,
      "客户-065",
      "2026-01-23",
      "759.50"
    ],
    [
      582,
      "客户-100",
      "2026-06-25",
      "744.00"
    ],
    [
      84,
      "客户-041",
      "2026-04-22",
      "741.25"
    ],
    [
      66,
      "客户-090",
      "2026-02-25",
      "710.00"
    ],
    [
      412,
      "客户-074",
      "2026-03-23",
      "701.75"
    ],
    [
      169,
      "客户-013",
      "2026-03-09",
      "685.75"
    ],
    [
      32,
      "客户-072",
      "2026-06-21",
      "680.00"
    ],
    [
      457,
      "客户-029",
      "2026-04-29",
      "662.50"
    ],
    [
      69,
      "客户-105",
      "2026-01-19",
      "604.75"
    ],
    [
      37,
      "客户-105",
      "2026-05-09",
      "597.00"
    ],
    [
      314,
      "客户-025",
      "2026-05-24",
      "548.00"
    ],
    [
      168,
      "客户-024",
      "2026-01-10",
      "543.25"
    ],
    [
      484,
      "客户-002",
      "2026-05-02",
      "531.75"
    ],
    [
      592,
      "客户-080",
      "2026-06-20",
      "530.50"
    ],
    [
      517,
      "客户-041",
      "2026-03-18",
      "512.50"
    ],
    [
      185,
      "客户-073",
      "2026-04-06",
      "499.75"
    ],
    [
      209,
      "客户-012",
      "2026-03-18",
      "496.50"
    ],
    [
      286,
      "客户-072",
      "2026-02-16",
      "486.75"
    ],
    [
      108,
      "客户-081",
      "2026-03-21",
      "482.00"
    ],
    [
      487,
      "客户-002",
      "2026-01-29",
      "474.25"
    ],
    [
      85,
      "客户-001",
      "2026-02-03",
      "462.75"
    ],
    [
      507,
      "客户-086",
      "2026-05-18",
      "453.00"
    ],
    [
      505,
      "客户-108",
      "2026-04-10",
      "444.00"
    ],
    [
      219,
      "客户-103",
      "2026-06-10",
      "421.25"
    ],
    [
      164,
      "客户-012",
      "2026-03-07",
      "416.75"
    ],
    [
      109,
      "客户-076",
      "2026-02-11",
      "415.50"
    ],
    [
      318,
      "客户-015",
      "2026-02-13",
      "412.75"
    ],
    [
      394,
      "客户-016",
      "2026-03-19",
      "378.75"
    ],
    [
      118,
      "客户-048",
      "2026-06-13",
      "357.00"
    ],
    [
      353,
      "客户-062",
      "2026-06-26",
      "354.50"
    ],
    [
      302,
      "客户-069",
      "2026-05-03",
      "341.50"
    ],
    [
      333,
      "客户-077",
      "2026-04-11",
      "333.50"
    ],
    [
      439,
      "客户-060",
      "2026-05-26",
      "333.50"
    ],
    [
      288,
      "客户-060",
      "2026-03-09",
      "322.50"
    ],
    [
      596,
      "客户-009",
      "2026-03-30",
      "313.50"
    ],
    [
      175,
      "客户-010",
      "2026-04-11",
      "312.00"
    ],
    [
      158,
      "客户-012",
      "2026-03-24",
      "310.50"
    ],
    [
      555,
      "客户-064",
      "2026-04-03",
      "310.00"
    ],
    [
      322,
      "客户-094",
      "2026-01-06",
      "256.50"
    ],
    [
      485,
      "客户-021",
      "2026-02-15",
      "245.75"
    ],
    [
      205,
      "客户-027",
      "2026-04-22",
      "230.00"
    ],
    [
      214,
      "客户-052",
      "2026-01-17",
      "215.75"
    ],
    [
      56,
      "客户-037",
      "2026-04-30",
      "198.75"
    ],
    [
      125,
      "客户-064",
      "2026-02-20",
      "192.00"
    ],
    [
      226,
      "客户-089",
      "2026-03-31",
      "180.50"
    ],
    [
      173,
      "客户-013",
      "2026-06-05",
      "174.50"
    ],
    [
      76,
      "客户-024",
      "2026-03-12",
      "165.00"
    ],
    [
      385,
      "客户-019",
      "2026-04-24",
      "164.75"
    ],
    [
      579,
      "客户-083",
      "2026-05-28",
      "135.75"
    ],
    [
      188,
      "客户-053",
      "2026-05-07",
      "134.00"
    ],
    [
      139,
      "客户-005",
      "2026-02-05",
      "133.00"
    ],
    [
      7,
      "客户-020",
      "2026-01-09",
      "131.50"
    ],
    [
      354,
      "客户-092",
      "2026-02-28",
      "111.75"
    ],
    [
      900002,
      "客户-001",
      "2026-06-30",
      "100.00"
    ],
    [
      900004,
      "客户-001",
      "2026-06-30",
      "100.00"
    ],
    [
      522,
      "客户-102",
      "2026-06-30",
      "70.50"
    ],
    [
      297,
      "客户-107",
      "2026-02-08",
      "65.75"
    ],
    [
      900003,
      "客户-001",
      "2026-06-30",
      "50.00"
    ],
    [
      515,
      "客户-079",
      "2026-03-26",
      "39.25"
    ],
    [
      348,
      "客户-004",
      "2026-05-21",
      "27.00"
    ]
  ]
}
摘要、错误与结果哈希
{
  "visible_summary": "筛选 2026-01-01 起的已完成订单,连接客户名称,输出订单信息并按订单金额降序、订单号升序排列。",
  "error_code": null,
  "error_message": null,
  "expected_digest": "d780841b19b0607647e55663cbe9eab3c35ff2b55eba3e78334a7fb27e22c268",
  "actual_digest": "13f156ad254e4b51653641773d34274de496c781c9bc68a9ca81c55e1f87d4b2",
  "assumptions": []
}

事件记录(8)

按全局事件序号排列,保留时间、级别、类型、消息和 payload。

SEQ 3case.startedinfo
{
  "status": "generating"
}
SEQ 4prompt.builtinfo
{
  "status": "completed"
}
SEQ 5provider.requestedinfo
{
  "isolation_policy_hash": "747b1ca3decdc24da64208265966caf487d37482255536a35fa93e138bee8f77",
  "status": "running"
}
SEQ 6provider.deltainfo
{
  "text": "{\"plan\":{\"grain\":\"每行一个订单\",\"sources\":[\"fact_orders\",\"dim_customers\"],\"joins\":[\"fact_orders.customer_id = dim_customers.customer_id\"],\"filters\":[\"fact_orders.status = 'completed'\",\"fact_orders.order_date >= DATE '2026-01-01'\"],\"metrics\":[\"输出订单头 total_amount\"],\"steps\":[\"筛选完成订单及日期范围\",\"连接客户维度获取 customer_name\",\"按 total_amount 降序、order_id 升序排序\"],\"risks\":[\"仅使用订单头 total_amount,不重复汇总订单行\"]},\"sql\":\"SELECT\\n    o.order_id,\\n    c.customer_name,\\n    o.order_date,\\n    o.total_amount\\nFROM fact_orders AS o\\nJOIN dim_customers AS c\\n    ON o.customer_id = c.customer_id\\nWHERE o.status = 'completed'\\n  AND o.order_date >= DATE '2026-01-01'\\nORDER BY o.total_amount DESC, o.order_id ASC;\",\"summary\":\"筛选 2026-01-01 起的已完成订单,连接客户名称,输出订单信息并按订单金额降序、订单号升序排列。\",\"assumptions\":[]}"
}
SEQ 7provider.completedinfo
{
  "elapsed_ms": 20533.108416995674,
  "status": "completed",
  "token_usage": {
    "cache_write_input_tokens": 0,
    "cached_input_tokens": 0,
    "input_tokens": 17999,
    "output_tokens": 346,
    "reasoning_output_tokens": 85
  }
}
SEQ 8plan.completedinfo
{
  "grain": "每行一个订单",
  "status": "completed",
  "steps": 3
}
SEQ 9sql.parsedinfo
{
  "status": "completed"
}
SEQ 10score.completedinfo
{
  "score": 100,
  "status": "completed"
}

原始案例数据

完整 JSON 字段,不经过页面裁剪。

展开全部原始字段
{
  "actual_digest": "13f156ad254e4b51653641773d34274de496c781c9bc68a9ca81c55e1f87d4b2",
  "assumptions": [],
  "attempt": 1,
  "category": "filter",
  "comparison": {
    "abs_tolerance": "0.005",
    "decimal_scale": 2,
    "duplicate_policy": "multiset",
    "max_rows": 10000,
    "rel_tolerance": "0",
    "row_order_significant": true
  },
  "difficulty": "easy",
  "error_code": null,
  "error_message": null,
  "execution_ms": 359.98508300690446,
  "expected_digest": "d780841b19b0607647e55663cbe9eab3c35ff2b55eba3e78334a7fb27e22c268",
  "expected_result_preview": {
    "columns": [
      {
        "name": "order_id",
        "type": "BIGINT"
      },
      {
        "name": "customer_name",
        "type": "VARCHAR"
      },
      {
        "name": "order_date",
        "type": "DATE"
      },
      {
        "name": "total_amount",
        "type": "DECIMAL(14,2)"
      }
    ],
    "digest": "d780841b19b0607647e55663cbe9eab3c35ff2b55eba3e78334a7fb27e22c268",
    "row_count": 162,
    "rows": [
      [
        562,
        "客户-059",
        "2026-01-13",
        "3278.25"
      ],
      [
        157,
        "客户-002",
        "2026-03-26",
        "3065.50"
      ],
      [
        497,
        "客户-078",
        "2026-05-26",
        "3039.75"
      ],
      [
        529,
        "客户-095",
        "2026-04-21",
        "3037.25"
      ],
      [
        315,
        "客户-065",
        "2026-03-11",
        "3006.75"
      ],
      [
        287,
        "客户-080",
        "2026-03-08",
        "2831.00"
      ],
      [
        93,
        "客户-044",
        "2026-03-17",
        "2775.50"
      ],
      [
        36,
        "客户-065",
        "2026-02-15",
        "2756.25"
      ],
      [
        44,
        "客户-059",
        "2026-01-06",
        "2743.00"
      ],
      [
        238,
        "客户-014",
        "2026-06-03",
        "2697.00"
      ],
      [
        255,
        "客户-017",
        "2026-04-24",
        "2417.25"
      ],
      [
        206,
        "客户-063",
        "2026-06-30",
        "2372.00"
      ],
      [
        503,
        "客户-044",
        "2026-02-26",
        "2363.25"
      ],
      [
        38,
        "客户-095",
        "2026-05-07",
        "2307.75"
      ],
      [
        144,
        "客户-038",
        "2026-04-18",
        "2272.25"
      ],
      [
        526,
        "客户-027",
        "2026-06-28",
        "2269.75"
      ],
      [
        368,
        "客户-045",
        "2026-02-13",
        "2257.25"
      ],
      [
        105,
        "客户-019",
        "2026-01-19",
        "2244.75"
      ],
      [
        356,
        "客户-044",
        "2026-04-03",
        "2234.00"
      ],
      [
        202,
        "客户-109",
        "2026-06-15",
        "2177.25"
      ],
      [
        27,
        "客户-085",
        "2026-03-16",
        "2174.50"
      ],
      [
        597,
        "客户-094",
        "2026-06-04",
        "2167.75"
      ],
      [
        272,
        "客户-032",
        "2026-01-27",
        "2114.75"
      ],
      [
        258,
        "客户-082",
        "2026-04-13",
        "2108.00"
      ],
      [
        62,
        "客户-050",
        "2026-02-18",
        "2106.25"
      ],
      [
        159,
        "客户-034",
        "2026-05-04",
        "2060.50"
      ],
      [
        279,
        "客户-040",
        "2026-04-02",
        "2018.50"
      ],
      [
        98,
        "客户-021",
        "2026-03-31",
        "1982.25"
      ],
      [
        68,
        "客户-013",
        "2026-01-05",
        "1975.75"
      ],
      [
        266,
        "客户-058",
        "2026-06-01",
        "1969.00"
      ],
      [
        172,
        "客户-062",
        "2026-03-07",
        "1968.00"
      ],
      [
        298,
        "客户-094",
        "2026-01-09",
        "1951.25"
      ],
      [
        63,
        "客户-094",
        "2026-01-28",
        "1911.25"
      ],
      [
        523,
        "客户-060",
        "2026-06-25",
        "1890.50"
      ],
      [
        57,
        "客户-105",
        "2026-03-05",
        "1888.25"
      ],
      [
        73,
        "客户-046",
        "2026-01-20",
        "1856.50"
      ],
      [
        393,
        "客户-006",
        "2026-01-29",
        "1809.25"
      ],
      [
        129,
        "客户-093",
        "2026-05-25",
        "1798.00"
      ],
      [
        192,
        "客户-076",
        "2026-04-24",
        "1793.75"
      ],
      [
        578,
        "客户-104",
        "2026-05-25",
        "1791.00"
      ],
      [
        388,
        "客户-015",
        "2026-02-24",
        "1789.75"
      ],
      [
        49,
        "客户-014",
        "2026-06-20",
        "1789.00"
      ],
      [
        405,
        "客户-079",
        "2026-06-08",
        "1774.50"
      ],
      [
        95,
        "客户-015",
        "2026-05-20",
        "1770.50"
      ],
      [
        422,
        "客户-079",
        "2026-05-01",
        "1758.00"
      ],
      [
        459,
        "客户-106",
        "2026-05-20",
        "1756.75"
      ],
      [
        177,
        "客户-093",
        "2026-01-18",
        "1732.50"
      ],
      [
        55,
        "客户-069",
        "2026-06-04",
        "1714.25"
      ],
      [
        229,
        "客户-012",
        "2026-03-11",
        "1696.75"
      ],
      [
        138,
        "客户-064",
        "2026-01-18",
        "1695.25"
      ],
      [
        296,
        "客户-048",
        "2026-03-18",
        "1692.00"
      ],
      [
        193,
        "客户-067",
        "2026-05-05",
        "1683.75"
      ],
      [
        369,
        "客户-035",
        "2026-05-10",
        "1667.50"
      ],
      [
        22,
        "客户-088",
        "2026-03-29",
        "1656.25"
      ],
      [
        486,
        "客户-020",
        "2026-03-12",
        "1655.50"
      ],
      [
        216,
        "客户-057",
        "2026-06-24",
        "1628.00"
      ],
      [
        305,
        "客户-053",
        "2026-01-12",
        "1621.75"
      ],
      [
        508,
        "客户-012",
        "2026-01-07",
        "1584.25"
      ],
      [
        148,
        "客户-095",
        "2026-01-16",
        "1496.75"
      ],
      [
        399,
        "客户-109",
        "2026-05-03",
        "1493.00"
      ],
      [
        267,
        "客户-017",
        "2026-05-15",
        "1489.00"
      ],
      [
        103,
        "客户-095",
        "2026-05-29",
        "1464.25"
      ],
      [
        343,
        "客户-084",
        "2026-05-02",
        "1462.50"
      ],
      [
        478,
        "客户-096",
        "2026-02-04",
        "1415.00"
      ],
      [
        567,
        "客户-048",
        "2026-02-07",
        "1409.50"
      ],
      [
        52,
        "客户-090",
        "2026-01-06",
        "1376.75"
      ],
      [
        243,
        "客户-092",
        "2026-06-09",
        "1371.50"
      ],
      [
        339,
        "客户-081",
        "2026-02-01",
        "1368.75"
      ],
      [
        537,
        "客户-093",
        "2026-04-25",
        "1363.25"
      ],
      [
        594,
        "客户-041",
        "2026-05-30",
        "1345.50"
      ],
      [
        463,
        "客户-107",
        "2026-02-02",
        "1342.25"
      ],
      [
        58,
        "客户-073",
        "2026-04-17",
        "1334.25"
      ],
      [
        357,
        "客户-019",
        "2026-01-06",
        "1318.50"
      ],
      [
        195,
        "客户-029",
        "2026-01-09",
        "1309.50"
      ],
      [
        64,
        "客户-081",
        "2026-01-09",
        "1259.25"
      ],
      [
        367,
        "客户-089",
        "2026-05-08",
        "1258.25"
      ],
      [
        524,
        "客户-070",
        "2026-05-03",
        "1255.00"
      ],
      [
        583,
        "客户-049",
        "2026-02-23",
        "1231.00"
      ],
      [
        316,
        "客户-105",
        "2026-05-08",
        "1201.75"
      ],
      [
        263,
        "客户-004",
        "2026-06-18",
        "1199.00"
      ],
      [
        900001,
        "客户-001",
        "2026-06-30",
        "1189.00"
      ],
      [
        384,
        "客户-052",
        "2026-02-10",
        "1175.75"
      ],
      [
        116,
        "客户-010",
        "2026-03-13",
        "1156.25"
      ],
      [
        244,
        "客户-072",
        "2026-01-20",
        "1145.25"
      ],
      [
        416,
        "客户-017",
        "2026-05-03",
        "1138.75"
      ],
      [
        88,
        "客户-098",
        "2026-02-17",
        "1136.25"
      ],
      [
        359,
        "客户-019",
        "2026-01-08",
        "1058.00"
      ],
      [
        256,
        "客户-036",
        "2026-06-11",
        "1045.50"
      ],
      [
        516,
        "客户-005",
        "2026-03-26",
        "1009.75"
      ],
      [
        75,
        "客户-001",
        "2026-04-14",
        "988.75"
      ],
      [
        253,
        "客户-074",
        "2026-01-17",
        "971.50"
      ],
      [
        376,
        "客户-011",
        "2026-06-03",
        "963.50"
      ],
      [
        559,
        "客户-057",
        "2026-04-06",
        "946.75"
      ],
      [
        74,
        "客户-068",
        "2026-05-29",
        "928.25"
      ],
      [
        382,
        "客户-087",
        "2026-01-27",
        "920.75"
      ],
      [
        467,
        "客户-102",
        "2026-05-18",
        "918.75"
      ],
      [
        539,
        "客户-062",
        "2026-04-28",
        "911.50"
      ],
      [
        309,
        "客户-093",
        "2026-02-03",
        "905.50"
      ],
      [
        464,
        "客户-053",
        "2026-02-12",
        "822.75"
      ],
      [
        176,
        "客户-018",
        "2026-01-04",
        "804.25"
      ],
      [
        363,
        "客户-030",
        "2026-04-06",
        "801.00"
      ],
      [
        149,
        "客户-013",
        "2026-03-08",
        "786.25"
      ],
      [
        498,
        "客户-065",
        "2026-01-23",
        "759.50"
      ],
      [
        582,
        "客户-100",
        "2026-06-25",
        "744.00"
      ],
      [
        84,
        "客户-041",
        "2026-04-22",
        "741.25"
      ],
      [
        66,
        "客户-090",
        "2026-02-25",
        "710.00"
      ],
      [
        412,
        "客户-074",
        "2026-03-23",
        "701.75"
      ],
      [
        169,
        "客户-013",
        "2026-03-09",
        "685.75"
      ],
      [
        32,
        "客户-072",
        "2026-06-21",
        "680.00"
      ],
      [
        457,
        "客户-029",
        "2026-04-29",
        "662.50"
      ],
      [
        69,
        "客户-105",
        "2026-01-19",
        "604.75"
      ],
      [
        37,
        "客户-105",
        "2026-05-09",
        "597.00"
      ],
      [
        314,
        "客户-025",
        "2026-05-24",
        "548.00"
      ],
      [
        168,
        "客户-024",
        "2026-01-10",
        "543.25"
      ],
      [
        484,
        "客户-002",
        "2026-05-02",
        "531.75"
      ],
      [
        592,
        "客户-080",
        "2026-06-20",
        "530.50"
      ],
      [
        517,
        "客户-041",
        "2026-03-18",
        "512.50"
      ],
      [
        185,
        "客户-073",
        "2026-04-06",
        "499.75"
      ],
      [
        209,
        "客户-012",
        "2026-03-18",
        "496.50"
      ],
      [
        286,
        "客户-072",
        "2026-02-16",
        "486.75"
      ],
      [
        108,
        "客户-081",
        "2026-03-21",
        "482.00"
      ],
      [
        487,
        "客户-002",
        "2026-01-29",
        "474.25"
      ],
      [
        85,
        "客户-001",
        "2026-02-03",
        "462.75"
      ],
      [
        507,
        "客户-086",
        "2026-05-18",
        "453.00"
      ],
      [
        505,
        "客户-108",
        "2026-04-10",
        "444.00"
      ],
      [
        219,
        "客户-103",
        "2026-06-10",
        "421.25"
      ],
      [
        164,
        "客户-012",
        "2026-03-07",
        "416.75"
      ],
      [
        109,
        "客户-076",
        "2026-02-11",
        "415.50"
      ],
      [
        318,
        "客户-015",
        "2026-02-13",
        "412.75"
      ],
      [
        394,
        "客户-016",
        "2026-03-19",
        "378.75"
      ],
      [
        118,
        "客户-048",
        "2026-06-13",
        "357.00"
      ],
      [
        353,
        "客户-062",
        "2026-06-26",
        "354.50"
      ],
      [
        302,
        "客户-069",
        "2026-05-03",
        "341.50"
      ],
      [
        333,
        "客户-077",
        "2026-04-11",
        "333.50"
      ],
      [
        439,
        "客户-060",
        "2026-05-26",
        "333.50"
      ],
      [
        288,
        "客户-060",
        "2026-03-09",
        "322.50"
      ],
      [
        596,
        "客户-009",
        "2026-03-30",
        "313.50"
      ],
      [
        175,
        "客户-010",
        "2026-04-11",
        "312.00"
      ],
      [
        158,
        "客户-012",
        "2026-03-24",
        "310.50"
      ],
      [
        555,
        "客户-064",
        "2026-04-03",
        "310.00"
      ],
      [
        322,
        "客户-094",
        "2026-01-06",
        "256.50"
      ],
      [
        485,
        "客户-021",
        "2026-02-15",
        "245.75"
      ],
      [
        205,
        "客户-027",
        "2026-04-22",
        "230.00"
      ],
      [
        214,
        "客户-052",
        "2026-01-17",
        "215.75"
      ],
      [
        56,
        "客户-037",
        "2026-04-30",
        "198.75"
      ],
      [
        125,
        "客户-064",
        "2026-02-20",
        "192.00"
      ],
      [
        226,
        "客户-089",
        "2026-03-31",
        "180.50"
      ],
      [
        173,
        "客户-013",
        "2026-06-05",
        "174.50"
      ],
      [
        76,
        "客户-024",
        "2026-03-12",
        "165.00"
      ],
      [
        385,
        "客户-019",
        "2026-04-24",
        "164.75"
      ],
      [
        579,
        "客户-083",
        "2026-05-28",
        "135.75"
      ],
      [
        188,
        "客户-053",
        "2026-05-07",
        "134.00"
      ],
      [
        139,
        "客户-005",
        "2026-02-05",
        "133.00"
      ],
      [
        7,
        "客户-020",
        "2026-01-09",
        "131.50"
      ],
      [
        354,
        "客户-092",
        "2026-02-28",
        "111.75"
      ],
      [
        900002,
        "客户-001",
        "2026-06-30",
        "100.00"
      ],
      [
        900004,
        "客户-001",
        "2026-06-30",
        "100.00"
      ],
      [
        522,
        "客户-102",
        "2026-06-30",
        "70.50"
      ],
      [
        297,
        "客户-107",
        "2026-02-08",
        "65.75"
      ],
      [
        900003,
        "客户-001",
        "2026-06-30",
        "50.00"
      ],
      [
        515,
        "客户-079",
        "2026-03-26",
        "39.25"
      ],
      [
        348,
        "客户-004",
        "2026-05-21",
        "27.00"
      ]
    ]
  },
  "finished_at": "2026-08-29T22:47:09.320999",
  "formatted_sql": "SELECT\n  o.order_id,\n  c.customer_name,\n  o.order_date,\n  o.total_amount\nFROM fact_orders AS o\nJOIN dim_customers AS c\n  ON o.customer_id = c.customer_id\nWHERE\n  o.status = 'completed' AND o.order_date >= CAST('2026-01-01' AS DATE)\nORDER BY\n  o.total_amount DESC,\n  o.order_id ASC",
  "generated_sql": "SELECT\n    o.order_id,\n    c.customer_name,\n    o.order_date,\n    o.total_amount\nFROM fact_orders AS o\nJOIN dim_customers AS c\n    ON o.customer_id = c.customer_id\nWHERE o.status = 'completed'\n  AND o.order_date >= DATE '2026-01-01'\nORDER BY o.total_amount DESC, o.order_id ASC;",
  "generation_ms": null,
  "id": 127,
  "model_name": "Luna 本机实测",
  "model_run_id": 20,
  "plan": {
    "filters": [
      "fact_orders.status = 'completed'",
      "fact_orders.order_date >= DATE '2026-01-01'"
    ],
    "grain": "每行一个订单",
    "joins": [
      "fact_orders.customer_id = dim_customers.customer_id"
    ],
    "metrics": [
      "输出订单头 total_amount"
    ],
    "risks": [
      "仅使用订单头 total_amount,不重复汇总订单行"
    ],
    "sources": [
      "fact_orders",
      "dim_customers"
    ],
    "steps": [
      "筛选完成订单及日期范围",
      "连接客户维度获取 customer_name",
      "按 total_amount 降序、order_id 升序排序"
    ]
  },
  "prompt": "你是 Text-to-SQL 数据分析与数据开发生成器。先形成简洁、可审计的结构化查询方案,再生成完成问题所需的 SQL;不要输出隐藏推理。\n\n方言与安全规则:\nUse DuckDB SQL. Return exactly one read-only query. Do not access files, URLs, extensions, or schemas outside the supplied tables.\n\n数据库结构:\n{\"semantic_relationships\":[{\"cardinality\":\"many_to_one\",\"from_entity\":\"order\",\"sql_on\":\"fact_orders.customer_id = dim_customers.customer_id\",\"to_entity\":\"customer\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order\",\"sql_on\":\"fact_orders.channel_id = dim_channels.channel_id\",\"to_entity\":\"channel\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order_item\",\"sql_on\":\"fact_order_items.order_id = fact_orders.order_id\",\"to_entity\":\"order\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order_item\",\"sql_on\":\"fact_order_items.product_id = dim_products.product_id\",\"to_entity\":\"product\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"payment\",\"sql_on\":\"fact_payments.order_id = fact_orders.order_id\",\"to_entity\":\"order\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"return\",\"sql_on\":\"fact_returns.order_id = fact_order_items.order_id AND fact_returns.line_no = fact_order_items.line_no\",\"to_entity\":\"order_item\"}],\"tables\":[{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"channel_id\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"channel_name\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"channel_type\",\"nullable\":false}],\"foreign_keys\":[],\"name\":\"dim_channels\",\"primary_key\":[\"channel_id\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"customer_id\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"customer_name\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"city\",\"nullable\":true},{\"data_type\":\"DATE\",\"name\":\"signup_date\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"segment\",\"nullable\":false}],\"foreign_keys\":[],\"name\":\"dim_customers\",\"primary_key\":[\"customer_id\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"product_id\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"product_name\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"category\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"brand\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"list_price\",\"nullable\":false}],\"foreign_keys\":[],\"name\":\"dim_products\",\"primary_key\":[\"product_id\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"order_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"line_no\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"product_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"quantity\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"unit_price\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"discount_amount\",\"nullable\":false}],\"foreign_keys\":[{\"columns\":[\"order_id\"],\"referenced_columns\":[\"order_id\"],\"referenced_table\":\"fact_orders\"},{\"columns\":[\"product_id\"],\"referenced_columns\":[\"product_id\"],\"referenced_table\":\"dim_products\"}],\"name\":\"fact_order_items\",\"primary_key\":[\"order_id\",\"line_no\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"order_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"customer_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"channel_id\",\"nullable\":false},{\"data_type\":\"DATE\",\"name\":\"order_date\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"status\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"total_amount\",\"nullable\":false}],\"foreign_keys\":[{\"columns\":[\"customer_id\"],\"referenced_columns\":[\"customer_id\"],\"referenced_table\":\"dim_customers\"},{\"columns\":[\"channel_id\"],\"referenced_columns\":[\"channel_id\"],\"referenced_table\":\"dim_channels\"}],\"name\":\"fact_orders\",\"primary_key\":[\"order_id\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"payment_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"order_id\",\"nullable\":false},{\"data_type\":\"TIMESTAMP\",\"name\":\"paid_at\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"payment_method\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"amount\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"status\",\"nullable\":false}],\"foreign_keys\":[{\"columns\":[\"order_id\"],\"referenced_columns\":[\"order_id\"],\"referenced_table\":\"fact_orders\"}],\"name\":\"fact_payments\",\"primary_key\":[\"payment_id\"]},{\"columns\":[{\"data_type\":\"BIGINT\",\"name\":\"return_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"order_id\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"line_no\",\"nullable\":false},{\"data_type\":\"TIMESTAMP\",\"name\":\"returned_at\",\"nullable\":false},{\"data_type\":\"BIGINT\",\"name\":\"return_qty\",\"nullable\":false},{\"data_type\":\"DECIMAL(14,2)\",\"name\":\"refund_amount\",\"nullable\":false},{\"data_type\":\"VARCHAR\",\"name\":\"reason\",\"nullable\":true}],\"foreign_keys\":[{\"columns\":[\"order_id\",\"line_no\"],\"referenced_columns\":[\"order_id\",\"line_no\"],\"referenced_table\":\"fact_order_items\"}],\"name\":\"fact_returns\",\"primary_key\":[\"return_id\"]}]}\n\n语义层与业务口径:\n{\"business_rules\":[\"完成订单仅指 fact_orders.status = 'completed'。\",\"净销售额为 quantity * unit_price - discount_amount。\",\"paid、refunded、failed 金额只按 fact_payments.status 分类。\",\"退货率为完成订单的 returned_qty / sold_qty,售出数量仅含完成订单。\",\"月份按 UTC Gregorian calendar 计算。\",\"订单头 total_amount 应等于订单行净额汇总,差异视为数据质量异常。\"],\"dimensions\":[{\"data_type\":\"VARCHAR\",\"description\":\"客户分群\",\"expression\":\"dim_customers.segment\",\"name\":\"customer_segment\"},{\"data_type\":\"VARCHAR\",\"description\":\"商品品类\",\"expression\":\"dim_products.category\",\"name\":\"product_category\"},{\"data_type\":\"VARCHAR\",\"description\":\"渠道类型\",\"expression\":\"dim_channels.channel_type\",\"name\":\"channel_type\"},{\"data_type\":\"VARCHAR\",\"description\":\"UTC Gregorian 月份\",\"expression\":\"strftime(fact_orders.order_date, '%Y-%m')\",\"name\":\"order_month\"}],\"entities\":[{\"description\":\"客户主数据\",\"grain\":\"每行一个客户\",\"name\":\"customer\",\"primary_key\":[\"customer_id\"],\"table\":\"dim_customers\"},{\"description\":\"商品主数据\",\"grain\":\"每行一个商品\",\"name\":\"product\",\"primary_key\":[\"product_id\"],\"table\":\"dim_products\"},{\"description\":\"渠道主数据\",\"grain\":\"每行一个渠道\",\"name\":\"channel\",\"primary_key\":[\"channel_id\"],\"table\":\"dim_channels\"},{\"description\":\"订单头\",\"grain\":\"每行一个订单\",\"name\":\"order\",\"primary_key\":[\"order_id\"],\"table\":\"fact_orders\"},{\"description\":\"订单行\",\"grain\":\"每行一个订单商品行\",\"name\":\"order_item\",\"primary_key\":[\"order_id\",\"line_no\"],\"table\":\"fact_order_items\"},{\"description\":\"支付尝试\",\"grain\":\"每行一笔支付\",\"name\":\"payment\",\"primary_key\":[\"payment_id\"],\"table\":\"fact_payments\"},{\"description\":\"退货记录\",\"grain\":\"每行一条订单行退货\",\"name\":\"return\",\"primary_key\":[\"return_id\"],\"table\":\"fact_returns\"}],\"metrics\":[{\"description\":\"已完成订单数\",\"expression\":\"COUNT(DISTINCT CASE WHEN fact_orders.status = 'completed' THEN fact_orders.order_id END)\",\"filters\":[\"fact_orders.status = 'completed'\"],\"grain\":\"聚合\",\"name\":\"completed_order_count\"},{\"description\":\"完成订单商品行净销售额\",\"expression\":\"SUM(fact_order_items.quantity * fact_order_items.unit_price - fact_order_items.discount_amount)\",\"filters\":[\"fact_orders.status = 'completed'\"],\"grain\":\"聚合\",\"name\":\"net_revenue\"},{\"description\":\"成功支付金额\",\"expression\":\"SUM(CASE WHEN fact_payments.status = 'paid' THEN fact_payments.amount ELSE 0 END)\",\"filters\":[],\"grain\":\"聚合\",\"name\":\"paid_amount\"},{\"description\":\"退款状态支付金额\",\"expression\":\"SUM(CASE WHEN fact_payments.status = 'refunded' THEN fact_payments.amount ELSE 0 END)\",\"filters\":[],\"grain\":\"聚合\",\"name\":\"refunded_amount\"},{\"description\":\"失败支付金额\",\"expression\":\"SUM(CASE WHEN fact_payments.status = 'failed' THEN fact_payments.amount ELSE 0 END)\",\"filters\":[],\"grain\":\"聚合\",\"name\":\"failed_amount\"},{\"description\":\"完成订单退货数量除以售出数量\",\"expression\":\"SUM(fact_returns.return_qty) / SUM(fact_order_items.quantity)\",\"filters\":[\"fact_orders.status = 'completed'\"],\"grain\":\"聚合\",\"name\":\"return_rate\"}],\"relationships\":[{\"cardinality\":\"many_to_one\",\"from_entity\":\"order\",\"sql_on\":\"fact_orders.customer_id = dim_customers.customer_id\",\"to_entity\":\"customer\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order\",\"sql_on\":\"fact_orders.channel_id = dim_channels.channel_id\",\"to_entity\":\"channel\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order_item\",\"sql_on\":\"fact_order_items.order_id = fact_orders.order_id\",\"to_entity\":\"order\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"order_item\",\"sql_on\":\"fact_order_items.product_id = dim_products.product_id\",\"to_entity\":\"product\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"payment\",\"sql_on\":\"fact_payments.order_id = fact_orders.order_id\",\"to_entity\":\"order\"},{\"cardinality\":\"many_to_one\",\"from_entity\":\"return\",\"sql_on\":\"fact_returns.order_id = fact_order_items.order_id AND fact_returns.line_no = fact_order_items.line_no\",\"to_entity\":\"order_item\"}]}\n\n问题:\n查询 2026-01-01 起已完成订单,输出 order_id、customer_name、order_date、total_amount,并按 total_amount 降序、order_id 升序。\n\n规划要求:\nplan 只记录输出粒度、数据源、连接、过滤、指标、执行步骤和风险检查;每项保持简短。\nSQL 必须严格实现该 plan,并遵循语义层业务口径。\nsummary 只概括最终做法,assumptions 只列无法由上下文确定的必要假设。\n输出必须严格匹配此 JSON Schema:\n{\"$defs\":{\"QueryPlan\":{\"additionalProperties\":false,\"properties\":{\"filters\":{\"items\":{\"type\":\"string\"},\"title\":\"Filters\",\"type\":\"array\"},\"grain\":{\"title\":\"Grain\",\"type\":\"string\"},\"joins\":{\"items\":{\"type\":\"string\"},\"title\":\"Joins\",\"type\":\"array\"},\"metrics\":{\"items\":{\"type\":\"string\"},\"title\":\"Metrics\",\"type\":\"array\"},\"risks\":{\"items\":{\"type\":\"string\"},\"title\":\"Risks\",\"type\":\"array\"},\"sources\":{\"items\":{\"type\":\"string\"},\"title\":\"Sources\",\"type\":\"array\"},\"steps\":{\"items\":{\"type\":\"string\"},\"title\":\"Steps\",\"type\":\"array\"}},\"required\":[\"grain\",\"sources\",\"joins\",\"filters\",\"metrics\",\"steps\",\"risks\"],\"title\":\"QueryPlan\",\"type\":\"object\"}},\"additionalProperties\":false,\"properties\":{\"assumptions\":{\"items\":{\"type\":\"string\"},\"title\":\"Assumptions\",\"type\":\"array\"},\"plan\":{\"$ref\":\"#/$defs/QueryPlan\"},\"sql\":{\"title\":\"Sql\",\"type\":\"string\"},\"summary\":{\"title\":\"Summary\",\"type\":\"string\"}},\"required\":[\"plan\",\"sql\",\"summary\",\"assumptions\"],\"title\":\"GenerationOutput\",\"type\":\"object\"}",
  "provider_request_id": null,
  "question": "查询 2026-01-01 起已完成订单,输出 order_id、customer_name、order_date、total_amount,并按 total_amount 降序、order_id 升序。",
  "radar_dimension": "基础查询",
  "raw_output": "{\"plan\":{\"grain\":\"每行一个订单\",\"sources\":[\"fact_orders\",\"dim_customers\"],\"joins\":[\"fact_orders.customer_id = dim_customers.customer_id\"],\"filters\":[\"fact_orders.status = 'completed'\",\"fact_orders.order_date >= DATE '2026-01-01'\"],\"metrics\":[\"输出订单头 total_amount\"],\"steps\":[\"筛选完成订单及日期范围\",\"连接客户维度获取 customer_name\",\"按 total_amount 降序、order_id 升序排序\"],\"risks\":[\"仅使用订单头 total_amount,不重复汇总订单行\"]},\"sql\":\"SELECT\\n    o.order_id,\\n    c.customer_name,\\n    o.order_date,\\n    o.total_amount\\nFROM fact_orders AS o\\nJOIN dim_customers AS c\\n    ON o.customer_id = c.customer_id\\nWHERE o.status = 'completed'\\n  AND o.order_date >= DATE '2026-01-01'\\nORDER BY o.total_amount DESC, o.order_id ASC;\",\"summary\":\"筛选 2026-01-01 起的已完成订单,连接客户名称,输出订单信息并按订单金额降序、订单号升序排列。\",\"assumptions\":[]}",
  "reference_sql": "SELECT o.order_id, c.customer_name, o.order_date, o.total_amount FROM fact_orders o JOIN dim_customers c ON c.customer_id = o.customer_id WHERE o.status = 'completed' AND o.order_date >= DATE '2026-01-01' ORDER BY o.total_amount DESC, o.order_id ASC",
  "requested_model_id": "gpt-5.6-luna",
  "required_ast": [],
  "resolved_model_id": "gpt-5.6-luna",
  "result_preview": {
    "columns": [
      {
        "name": "order_id",
        "type": "BIGINT"
      },
      {
        "name": "customer_name",
        "type": "VARCHAR"
      },
      {
        "name": "order_date",
        "type": "DATE"
      },
      {
        "name": "total_amount",
        "type": "DECIMAL(14,2)"
      }
    ],
    "extra": [],
    "missing": [],
    "row_count": 162,
    "rows": [
      [
        562,
        "客户-059",
        "2026-01-13",
        "3278.25"
      ],
      [
        157,
        "客户-002",
        "2026-03-26",
        "3065.50"
      ],
      [
        497,
        "客户-078",
        "2026-05-26",
        "3039.75"
      ],
      [
        529,
        "客户-095",
        "2026-04-21",
        "3037.25"
      ],
      [
        315,
        "客户-065",
        "2026-03-11",
        "3006.75"
      ],
      [
        287,
        "客户-080",
        "2026-03-08",
        "2831.00"
      ],
      [
        93,
        "客户-044",
        "2026-03-17",
        "2775.50"
      ],
      [
        36,
        "客户-065",
        "2026-02-15",
        "2756.25"
      ],
      [
        44,
        "客户-059",
        "2026-01-06",
        "2743.00"
      ],
      [
        238,
        "客户-014",
        "2026-06-03",
        "2697.00"
      ],
      [
        255,
        "客户-017",
        "2026-04-24",
        "2417.25"
      ],
      [
        206,
        "客户-063",
        "2026-06-30",
        "2372.00"
      ],
      [
        503,
        "客户-044",
        "2026-02-26",
        "2363.25"
      ],
      [
        38,
        "客户-095",
        "2026-05-07",
        "2307.75"
      ],
      [
        144,
        "客户-038",
        "2026-04-18",
        "2272.25"
      ],
      [
        526,
        "客户-027",
        "2026-06-28",
        "2269.75"
      ],
      [
        368,
        "客户-045",
        "2026-02-13",
        "2257.25"
      ],
      [
        105,
        "客户-019",
        "2026-01-19",
        "2244.75"
      ],
      [
        356,
        "客户-044",
        "2026-04-03",
        "2234.00"
      ],
      [
        202,
        "客户-109",
        "2026-06-15",
        "2177.25"
      ],
      [
        27,
        "客户-085",
        "2026-03-16",
        "2174.50"
      ],
      [
        597,
        "客户-094",
        "2026-06-04",
        "2167.75"
      ],
      [
        272,
        "客户-032",
        "2026-01-27",
        "2114.75"
      ],
      [
        258,
        "客户-082",
        "2026-04-13",
        "2108.00"
      ],
      [
        62,
        "客户-050",
        "2026-02-18",
        "2106.25"
      ],
      [
        159,
        "客户-034",
        "2026-05-04",
        "2060.50"
      ],
      [
        279,
        "客户-040",
        "2026-04-02",
        "2018.50"
      ],
      [
        98,
        "客户-021",
        "2026-03-31",
        "1982.25"
      ],
      [
        68,
        "客户-013",
        "2026-01-05",
        "1975.75"
      ],
      [
        266,
        "客户-058",
        "2026-06-01",
        "1969.00"
      ],
      [
        172,
        "客户-062",
        "2026-03-07",
        "1968.00"
      ],
      [
        298,
        "客户-094",
        "2026-01-09",
        "1951.25"
      ],
      [
        63,
        "客户-094",
        "2026-01-28",
        "1911.25"
      ],
      [
        523,
        "客户-060",
        "2026-06-25",
        "1890.50"
      ],
      [
        57,
        "客户-105",
        "2026-03-05",
        "1888.25"
      ],
      [
        73,
        "客户-046",
        "2026-01-20",
        "1856.50"
      ],
      [
        393,
        "客户-006",
        "2026-01-29",
        "1809.25"
      ],
      [
        129,
        "客户-093",
        "2026-05-25",
        "1798.00"
      ],
      [
        192,
        "客户-076",
        "2026-04-24",
        "1793.75"
      ],
      [
        578,
        "客户-104",
        "2026-05-25",
        "1791.00"
      ],
      [
        388,
        "客户-015",
        "2026-02-24",
        "1789.75"
      ],
      [
        49,
        "客户-014",
        "2026-06-20",
        "1789.00"
      ],
      [
        405,
        "客户-079",
        "2026-06-08",
        "1774.50"
      ],
      [
        95,
        "客户-015",
        "2026-05-20",
        "1770.50"
      ],
      [
        422,
        "客户-079",
        "2026-05-01",
        "1758.00"
      ],
      [
        459,
        "客户-106",
        "2026-05-20",
        "1756.75"
      ],
      [
        177,
        "客户-093",
        "2026-01-18",
        "1732.50"
      ],
      [
        55,
        "客户-069",
        "2026-06-04",
        "1714.25"
      ],
      [
        229,
        "客户-012",
        "2026-03-11",
        "1696.75"
      ],
      [
        138,
        "客户-064",
        "2026-01-18",
        "1695.25"
      ],
      [
        296,
        "客户-048",
        "2026-03-18",
        "1692.00"
      ],
      [
        193,
        "客户-067",
        "2026-05-05",
        "1683.75"
      ],
      [
        369,
        "客户-035",
        "2026-05-10",
        "1667.50"
      ],
      [
        22,
        "客户-088",
        "2026-03-29",
        "1656.25"
      ],
      [
        486,
        "客户-020",
        "2026-03-12",
        "1655.50"
      ],
      [
        216,
        "客户-057",
        "2026-06-24",
        "1628.00"
      ],
      [
        305,
        "客户-053",
        "2026-01-12",
        "1621.75"
      ],
      [
        508,
        "客户-012",
        "2026-01-07",
        "1584.25"
      ],
      [
        148,
        "客户-095",
        "2026-01-16",
        "1496.75"
      ],
      [
        399,
        "客户-109",
        "2026-05-03",
        "1493.00"
      ],
      [
        267,
        "客户-017",
        "2026-05-15",
        "1489.00"
      ],
      [
        103,
        "客户-095",
        "2026-05-29",
        "1464.25"
      ],
      [
        343,
        "客户-084",
        "2026-05-02",
        "1462.50"
      ],
      [
        478,
        "客户-096",
        "2026-02-04",
        "1415.00"
      ],
      [
        567,
        "客户-048",
        "2026-02-07",
        "1409.50"
      ],
      [
        52,
        "客户-090",
        "2026-01-06",
        "1376.75"
      ],
      [
        243,
        "客户-092",
        "2026-06-09",
        "1371.50"
      ],
      [
        339,
        "客户-081",
        "2026-02-01",
        "1368.75"
      ],
      [
        537,
        "客户-093",
        "2026-04-25",
        "1363.25"
      ],
      [
        594,
        "客户-041",
        "2026-05-30",
        "1345.50"
      ],
      [
        463,
        "客户-107",
        "2026-02-02",
        "1342.25"
      ],
      [
        58,
        "客户-073",
        "2026-04-17",
        "1334.25"
      ],
      [
        357,
        "客户-019",
        "2026-01-06",
        "1318.50"
      ],
      [
        195,
        "客户-029",
        "2026-01-09",
        "1309.50"
      ],
      [
        64,
        "客户-081",
        "2026-01-09",
        "1259.25"
      ],
      [
        367,
        "客户-089",
        "2026-05-08",
        "1258.25"
      ],
      [
        524,
        "客户-070",
        "2026-05-03",
        "1255.00"
      ],
      [
        583,
        "客户-049",
        "2026-02-23",
        "1231.00"
      ],
      [
        316,
        "客户-105",
        "2026-05-08",
        "1201.75"
      ],
      [
        263,
        "客户-004",
        "2026-06-18",
        "1199.00"
      ],
      [
        900001,
        "客户-001",
        "2026-06-30",
        "1189.00"
      ],
      [
        384,
        "客户-052",
        "2026-02-10",
        "1175.75"
      ],
      [
        116,
        "客户-010",
        "2026-03-13",
        "1156.25"
      ],
      [
        244,
        "客户-072",
        "2026-01-20",
        "1145.25"
      ],
      [
        416,
        "客户-017",
        "2026-05-03",
        "1138.75"
      ],
      [
        88,
        "客户-098",
        "2026-02-17",
        "1136.25"
      ],
      [
        359,
        "客户-019",
        "2026-01-08",
        "1058.00"
      ],
      [
        256,
        "客户-036",
        "2026-06-11",
        "1045.50"
      ],
      [
        516,
        "客户-005",
        "2026-03-26",
        "1009.75"
      ],
      [
        75,
        "客户-001",
        "2026-04-14",
        "988.75"
      ],
      [
        253,
        "客户-074",
        "2026-01-17",
        "971.50"
      ],
      [
        376,
        "客户-011",
        "2026-06-03",
        "963.50"
      ],
      [
        559,
        "客户-057",
        "2026-04-06",
        "946.75"
      ],
      [
        74,
        "客户-068",
        "2026-05-29",
        "928.25"
      ],
      [
        382,
        "客户-087",
        "2026-01-27",
        "920.75"
      ],
      [
        467,
        "客户-102",
        "2026-05-18",
        "918.75"
      ],
      [
        539,
        "客户-062",
        "2026-04-28",
        "911.50"
      ],
      [
        309,
        "客户-093",
        "2026-02-03",
        "905.50"
      ],
      [
        464,
        "客户-053",
        "2026-02-12",
        "822.75"
      ],
      [
        176,
        "客户-018",
        "2026-01-04",
        "804.25"
      ],
      [
        363,
        "客户-030",
        "2026-04-06",
        "801.00"
      ],
      [
        149,
        "客户-013",
        "2026-03-08",
        "786.25"
      ],
      [
        498,
        "客户-065",
        "2026-01-23",
        "759.50"
      ],
      [
        582,
        "客户-100",
        "2026-06-25",
        "744.00"
      ],
      [
        84,
        "客户-041",
        "2026-04-22",
        "741.25"
      ],
      [
        66,
        "客户-090",
        "2026-02-25",
        "710.00"
      ],
      [
        412,
        "客户-074",
        "2026-03-23",
        "701.75"
      ],
      [
        169,
        "客户-013",
        "2026-03-09",
        "685.75"
      ],
      [
        32,
        "客户-072",
        "2026-06-21",
        "680.00"
      ],
      [
        457,
        "客户-029",
        "2026-04-29",
        "662.50"
      ],
      [
        69,
        "客户-105",
        "2026-01-19",
        "604.75"
      ],
      [
        37,
        "客户-105",
        "2026-05-09",
        "597.00"
      ],
      [
        314,
        "客户-025",
        "2026-05-24",
        "548.00"
      ],
      [
        168,
        "客户-024",
        "2026-01-10",
        "543.25"
      ],
      [
        484,
        "客户-002",
        "2026-05-02",
        "531.75"
      ],
      [
        592,
        "客户-080",
        "2026-06-20",
        "530.50"
      ],
      [
        517,
        "客户-041",
        "2026-03-18",
        "512.50"
      ],
      [
        185,
        "客户-073",
        "2026-04-06",
        "499.75"
      ],
      [
        209,
        "客户-012",
        "2026-03-18",
        "496.50"
      ],
      [
        286,
        "客户-072",
        "2026-02-16",
        "486.75"
      ],
      [
        108,
        "客户-081",
        "2026-03-21",
        "482.00"
      ],
      [
        487,
        "客户-002",
        "2026-01-29",
        "474.25"
      ],
      [
        85,
        "客户-001",
        "2026-02-03",
        "462.75"
      ],
      [
        507,
        "客户-086",
        "2026-05-18",
        "453.00"
      ],
      [
        505,
        "客户-108",
        "2026-04-10",
        "444.00"
      ],
      [
        219,
        "客户-103",
        "2026-06-10",
        "421.25"
      ],
      [
        164,
        "客户-012",
        "2026-03-07",
        "416.75"
      ],
      [
        109,
        "客户-076",
        "2026-02-11",
        "415.50"
      ],
      [
        318,
        "客户-015",
        "2026-02-13",
        "412.75"
      ],
      [
        394,
        "客户-016",
        "2026-03-19",
        "378.75"
      ],
      [
        118,
        "客户-048",
        "2026-06-13",
        "357.00"
      ],
      [
        353,
        "客户-062",
        "2026-06-26",
        "354.50"
      ],
      [
        302,
        "客户-069",
        "2026-05-03",
        "341.50"
      ],
      [
        333,
        "客户-077",
        "2026-04-11",
        "333.50"
      ],
      [
        439,
        "客户-060",
        "2026-05-26",
        "333.50"
      ],
      [
        288,
        "客户-060",
        "2026-03-09",
        "322.50"
      ],
      [
        596,
        "客户-009",
        "2026-03-30",
        "313.50"
      ],
      [
        175,
        "客户-010",
        "2026-04-11",
        "312.00"
      ],
      [
        158,
        "客户-012",
        "2026-03-24",
        "310.50"
      ],
      [
        555,
        "客户-064",
        "2026-04-03",
        "310.00"
      ],
      [
        322,
        "客户-094",
        "2026-01-06",
        "256.50"
      ],
      [
        485,
        "客户-021",
        "2026-02-15",
        "245.75"
      ],
      [
        205,
        "客户-027",
        "2026-04-22",
        "230.00"
      ],
      [
        214,
        "客户-052",
        "2026-01-17",
        "215.75"
      ],
      [
        56,
        "客户-037",
        "2026-04-30",
        "198.75"
      ],
      [
        125,
        "客户-064",
        "2026-02-20",
        "192.00"
      ],
      [
        226,
        "客户-089",
        "2026-03-31",
        "180.50"
      ],
      [
        173,
        "客户-013",
        "2026-06-05",
        "174.50"
      ],
      [
        76,
        "客户-024",
        "2026-03-12",
        "165.00"
      ],
      [
        385,
        "客户-019",
        "2026-04-24",
        "164.75"
      ],
      [
        579,
        "客户-083",
        "2026-05-28",
        "135.75"
      ],
      [
        188,
        "客户-053",
        "2026-05-07",
        "134.00"
      ],
      [
        139,
        "客户-005",
        "2026-02-05",
        "133.00"
      ],
      [
        7,
        "客户-020",
        "2026-01-09",
        "131.50"
      ],
      [
        354,
        "客户-092",
        "2026-02-28",
        "111.75"
      ],
      [
        900002,
        "客户-001",
        "2026-06-30",
        "100.00"
      ],
      [
        900004,
        "客户-001",
        "2026-06-30",
        "100.00"
      ],
      [
        522,
        "客户-102",
        "2026-06-30",
        "70.50"
      ],
      [
        297,
        "客户-107",
        "2026-02-08",
        "65.75"
      ],
      [
        900003,
        "客户-001",
        "2026-06-30",
        "50.00"
      ],
      [
        515,
        "客户-079",
        "2026-03-26",
        "39.25"
      ],
      [
        348,
        "客户-004",
        "2026-05-21",
        "27.00"
      ]
    ]
  },
  "run_id": 17,
  "score": {
    "ast_rules": [],
    "column_count": 5,
    "column_names": 5,
    "execution": 10,
    "ordering": 10,
    "protocol": 5,
    "read_only_ast": 5,
    "row_f1": 45,
    "sql_capability": 15,
    "total": 100
  },
  "stable_key": "basic_filter_sort",
  "started_at": "2026-08-29T22:46:48.393710",
  "status": "completed",
  "suite_content_hash": "5b5d98876ea35114f18ce6dfa48cc9800d88b6baba80d311b2f52552a38b31af",
  "title": "基础筛选与排序",
  "token_usage": {
    "cache_write_input_tokens": 0,
    "cached_input_tokens": 0,
    "input_tokens": 17999,
    "output_tokens": 346,
    "reasoning_output_tokens": 85
  },
  "visible_summary": "筛选 2026-01-01 起的已完成订单,连接客户名称,输出订单信息并按订单金额降序、订单号升序排列。"
}