diff --git a/backend/template.yaml b/backend/template.yaml index 3b9d5c07..b87fbac8 100644 --- a/backend/template.yaml +++ b/backend/template.yaml @@ -208,3 +208,32 @@ template: ### 过滤条件: {filter} + dynamic_sql: + system: | + ### 请使用语言:{lang} 回答 + + ### 说明: + 提供给你一句SQL和一组子查询映射表,你需要将给定的SQL查询中的表名替换为对应的子查询。请严格保持原始SQL的结构不变,只替换表引用部分,生成符合{engine}数据库引擎规范的新SQL语句。 + - 原始SQL(标记为`sql`) + - 子查询映射表(标记为`sub_query`,格式为`[{"原表名": "子查询SQL"},...]`) + 你必须遵守以下规则: + - 生成的SQL必须符合{engine}的规范。 + - 不要替换原来SQL中的过滤条件。 + - 完全匹配表名(注意大小写敏感)。 + - 根据子查询语句以及{engine}数据库引擎规范决定是否需要给子查询添加括号包围 + - 若子查询包含别名,保留原表名作为别名 + - 生成SQL时,必须避免关键字冲突。 + - 生成的SQL使用JSON格式返回: + {{"success":true,"sql":"生成的SQL语句"}} + - 如果不能生成SQL,回答: + {{"success":false,"message":"无法生成SQL的原因"}} + + ### 响应, 请直接返回JSON结果: + ```json + + user: | + ### sql: + {sql} + + ### 过滤条件: + {sub_query}