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

基于多表多列条件为Table2新增列的SQL查询需求

解决方案:根据关联表条件生成新列

我们可以通过关联两个表,并使用CASE条件语句实现需求,具体SQL代码如下:

SELECT 
    t2.ID,
    t2.Col1,
    t2.Col2,
    CASE
        WHEN t1.Type = 'EE' AND t2.Col1 = 'Red' AND t2.Col2 = 'Yes' THEN 'Electric'
        WHEN t1.Type = 'MM' AND t2.Col1 = 'Blue' AND t2.Col2 = 'Yes' THEN 'Mechanic'
        ELSE NULL
    END AS NewColumn
FROM Table2 t2
INNER JOIN Table1 t1 
    ON t2.ID = t1.ID;

逻辑说明

  1. 表关联:通过INNER JOIN以ID为关联键,将Table1的Type字段与Table2的记录匹配,确保每条Table2的记录能获取到对应的Type值
  2. 条件判断:使用CASE语句依次匹配需求中的两个规则,符合条件时返回指定字符串,其余情况返回空值(NULL)

执行上述查询后,将得到符合预期的结果表:

IDCol1Col2NewColumn
1RedYesElectric
2BlueYesMechanic
3RedNo

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 15:22:10