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

SQL技术问询:选取C1&C2组合值唯一且C3值不同的记录,指定R2/R3的Item1

嘿,这两个SQL需求我帮你梳理清楚啦,直接上解决方案:

1. 选取C1与C2组合对应C3值不同的记录

先确认下需求逻辑:你应该是想找出那些同一C1+C2组合下,对应C3值存在差异的所有记录吧?毕竟如果C1+C2组合本身是唯一的(全局只出现一次),那不可能对应不同的C3值,所以我按更合理的业务场景来实现:

实现思路是先定位符合条件的C1+C2组合,再拉取这些组合的完整记录:

-- 替换成你的实际表名
SELECT t.*
FROM your_table t
INNER JOIN (
    -- 子查询找出所有有不同C3值的C1+C2组合
    SELECT C1, C2
    FROM your_table
    GROUP BY C1, C2
    HAVING COUNT(DISTINCT C3) > 1
) AS valid_pairs 
ON t.C1 = valid_pairs.C1 AND t.C2 = valid_pairs.C2;

如果你的“组合值唯一”是其他意思(比如有特殊的唯一性约束),随时补充场景细节,我再调整语句~

2. 从R2和/或R3中选取Item 1

这里的“和/或”对应不同的业务场景,给你几个常用的实现方式:

  • 要保留两个表中所有Item 1(包括重复项):
SELECT Item_1 FROM R2 
-- 可以加过滤条件,比如 WHERE Item_1 = '目标值'
UNION ALL
SELECT Item_1 FROM R3;
  • 要去重,只保留唯一的Item 1:
SELECT Item_1 FROM R2
UNION
SELECT Item_1 FROM R3;
  • 要取同时存在于R2和R3中的Item 1:
SELECT r2.Item_1
FROM R2 r2
INNER JOIN R3 r3 ON r2.Item_1 = r3.Item_1;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:35:47