一、总体结论
二、8 大可模板化类型
模板1:查验率查询 🔥🔥🔥(~80 条,最高频)
固定结构:口岸 + 商品 + 时间范围 → 查验率/查验数/总数
代表问题:
“本周友谊关榴莲查验率”(Q6/8/11/12/130)
“今天磨憨的查验率”(Q131)
“南沙和蛇口的山竹查验率”(Q92/102)
“越南椰青查验率”(Q171/175)
“广西各个口岸榴莲查验率”(Q97/98)
参数:{口岸} {商品} {时间范围} {原产国(可选)}
SQL 骨架:
SELECT
COUNT(CASE WHEN sfcy = 'Y' THEN 1 END) AS 查验数,
COUNT(*) AS 总数,
ROUND(COUNT(CASE WHEN sfcy = 'Y' THEN 1 END) * 100.0 / COUNT(*), 2) AS 查验率
FROM yw_hddz
WHERE jcka = {口岸}
AND hz_spmc LIKE %{商品}%
AND sjkgsj BETWEEN {start} AND {end}
[AND ycd = {原产国}]
AND state <> '终止'
模板2:柜量统计 🔥🔥🔥(~120 条,最大量)
固定结构:客户/商品/口岸/国家/运输方式 + 时间范围 → SUM(柜量)
代表问题:
“佳农2025年业务量”(Q23/205)
“去年天津做了多少柜量”(Q4)
“2026年超过100柜的客户排名”(Q9/10)
“1月份樱桃业务量”(Q44/47/49)
“顺禾去年柜量和今年柜量”(Q569/641/642)
“2025年欧恒全年做了多少鲜榴莲”(Q186/189)
参数:{客户名(可选)} {商品(可选)} {口岸(可选)} {原产国(可选)} {运输方式(可选)} {时间范围} {分组维度(可选)}
SQL 骨架:
SELECT
[GROUP BY 维度],
SUM(jzxsl) AS 柜量
FROM yw_hddz
WHERE 1=1
[AND khmc LIKE %{客户名}%]
[AND hz_spmc LIKE %{商品}%]
[AND jcka = {口岸}]
[AND ycd = {原产国}]
[AND ysfs = {运输方式}]
AND sjkgsj BETWEEN {start} AND {end}
AND state <> '终止'
GROUP BY [分组维度]
参数组合多但 SQL 结构高度一致,需条件拼装器。
模板3:柜号查询 🔥🔥(~60 条)
固定结构:柜号 → 业务信息/状态/费用/单证
代表问题:
“ONEU9267400 什么时候靠港”(Q151/160)
“OERU4308304卸船了吗”(Q512-516/519)
“BMOU9301898单证金额多少”(Q590/604/608/673)
“FSCU5321527卸船时间”(Q547-549)
“CGOU9025259消费使用单位”(Q507-511/520)
“CICU6006194完整详细信息”(Q598/599)
参数:{柜号} {查询类型:基本信息/卸船状态/单证/费用/放行}
SQL 骨架:
SELECT h.ywbh, h.khmc, h.hz_jzxh, h.hz_spmc, h.sjkgsj, h.sfcy, h.state, h.jcka, h.ycd, h.mdg
FROM yw_hddz h
WHERE h.hz_jzxh = {柜号}
-- + JOIN 子表根据查询类型
模板4:客户业务员查询 🔥(~15 条)
固定结构:客户名 → 对应业务员
代表问题:
“煜谦这家客户的销售是谁”(Q34)
“天天鲜果的销售是谁”(Q39)
“泰丰绿创的业务员是谁”(Q685-690,问了6遍!)
“委托客户是三永的业务员是谁”(Q677)
参数:{客户名}
SQL 骨架:
SELECT DISTINCT y.ywy_name, w.khmc
FROM yw_hddz_ywy y
JOIN yw_hddz_ywy_main m ON y.main_id = m.id
JOIN yw_wldw w ON m.tybm = w.tybm
WHERE w.khmc LIKE %{客户名}%
AND y.is_delete = 0
模板5:税率查询 🔥(~20 条)
固定结构:商品 + 原产国 → 增值税率/关税/优惠关税
代表问题:
“智利樱桃的税率是多少”(Q5/16/22/28-30/62/204,问了8遍!)
“泰国冻榴莲肉关税是多少”(Q162/164)
“阿根廷樱桃有关税吗”(Q499)
“商品税率”(Q664)
参数:{商品} {原产国(可选)}
SQL 骨架:
SELECT cpxxkbm, spzwmc, ctr_cname, zzsl, zcgs, yhgs
FROM yw_hddz_cpxxk
WHERE spzwmc LIKE %{商品}%
[AND ctr_cname LIKE %{国家}%]
模板6:费用明细查询 🔥(~20 条)
固定结构:柜号/业务编号 → 费用拆解
代表问题:
“OTPU6758663这柜的税金是多少”(Q181)
“26LY03533的运费、关税、增值税、保险费明细”(Q674)
“FSCU5927556的单证费用明细”(Q675)
“友谊关到嘉兴的费用明细”(Q644-648)
参数:{柜号/业务编号}
SQL 骨架:
SELECT 费用项, 金额
FROM yw_hddz_js_bjrzlmx
WHERE hz_jzxh = {柜号} OR ywbh = {业务编号}
模板7:到港预测/船期查询 🔥(~20 条)
固定结构:船名/柜号 → 预计靠港时间
代表问题:
“船名Cosco Philippines预计靠港时间”(Q634-639,问了6遍)
“佳农最近一柜泰国鲜榴莲什么时候到”(Q68)
“最近的一柜鲜榴莲是到哪个口岸”(Q103)
“蛇口口岸未来一周到港集装箱数量”(Q657)
参数:{船名(可选)} {柜号(可选)} {口岸(可选)} {时间范围(可选)}
模板8:协议到期查询(~5 条)
固定结构:时间范围 → 即将到期协议列表
代表问题:
“那些协议下个月即将到期”(Q3)
“佳农最新代理协议”(Q63)
参数:{时间范围} {客户(可选)}
SQL 骨架:
SELECT dlxyh, dlwtf_mc, xylx, yxrq, sfzz
FROM yw_dlxy
WHERE yxrq BETWEEN {start} AND {end}
AND sfzz <> '是'
[AND dlwtf_mc LIKE %{客户}%]
三、8 大模板汇总
四、不可模板化(~300 条)
五、推荐实施路径
第一阶段:先做模板 1+2+3(覆盖 ~260 条,37%)
预期改善:
速度:100秒+ → 2-3秒
准确率:“看命” → 100%
覆盖:37% 的高频问数需求
第二阶段:迭代加模板 4-8
验证第一阶段体验后再逐步加,每个模板独立,互不影响。