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

如何使用Python在指定表查询特定值并从另一关联表返回匹配结果

Jarv数据库对话匹配功能实现说明

1. 数据库基础结构

现有名为Jarv的数据库,包含COM、RES两张数据表,字段信息如下:

  • COM表字段:ID(整数型)、CName(字符串型)、CType(字符串型)
  • RES表字段:ID(整数型)、RName(字符串型)、RType(字符串型)

2. 功能需求

接收用户输入内容后按照以下逻辑执行,任意步骤匹配失败均返回抱歉,请重新输入(原英文提示:Sorry, repeat again):

  1. 检查输入内容是否存在于COM表的CName列
  2. 匹配成功则获取该行对应的ID值
  3. 到RES表中查询与该ID匹配的行
  4. 匹配成功则返回该行对应的RName列值

3. 示例数据

COM表测试数据

ID     |      CName      |      CType     
1      |        Hi       |     Greeting
2      | whats your name |     Greeting
3      |   how are you   |     Greeting

RES表测试数据

ID     |      RName      |      RType     
1      |      Hello      |     Greeting
2      | My name is Jarv |     Greeting
3      |    I'm great    |     Greeting

4. 执行流程示例

以用户输入内容为Hi为例,执行流程如下:

  1. 在COM表的CName列查询到匹配值Hi,获取对应ID为1
  2. 在RES表的ID列查询到匹配ID=1的行,获取对应RName为Hello
  3. 将结果存入变量RESP输出,最终输出结果为Hello

5. 实现代码

SQL查询实现

可直接通过关联查询完成需求,代码如下:

-- 替换语句中的【用户输入内容】为实际接收到的用户输入
SELECT IFNULL(r.RName, '抱歉,请重新输入') AS RESP
FROM COM c
LEFT JOIN RES r ON c.ID = r.ID
WHERE c.CName = '用户输入内容'
LIMIT 1;

如果语句返回空结果,直接返回抱歉,请重新输入即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 14:00:00