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

Oracle中如何基于表条目及其引用条目生成唯一状态配对列表

Oracle表提取条目与引用条目唯一状态配对方案

核心思路

要实现这个需求,关键是自连接表——把当前条目和它引用的同表条目关联起来,再过滤无效记录、去重得到唯一配对。

具体SQL实现

假设你的表名为entry_table,列分别是entry_id(条目ID)、entry_status(条目状态)、referenced_entry_id(被引用条目ID),直接用下面的SQL就能得到你要的格式结果:

SELECT DISTINCT
    -- 生成(状态1,状态2)格式的字符串
    '(' || t1.entry_status || ',' || t2.entry_status || ')' AS 状态配对组合
FROM
    entry_table t1
INNER JOIN
    entry_table t2 ON t1.referenced_entry_id = t2.entry_id
WHERE
    t1.referenced_entry_id IS NOT NULL;

关键部分解释

  • INNER JOIN entry_table t2:通过referenced_entry_id和entry_id建立关联,把当前条目和它引用的条目一一配对
  • WHERE t1.referenced_entry_id IS NOT NULL:直接过滤掉没有引用条目的无效记录
  • DISTINCT:自动去重,确保每种状态配对只出现一次

可选调整

如果需要单独查看两个状态的原始值,而非拼接后的字符串,可以修改SELECT部分:

SELECT DISTINCT
    t1.entry_status AS 当前条目状态,
    t2.entry_status AS 引用条目状态
FROM
    entry_table t1
INNER JOIN
    entry_table t2 ON t1.referenced_entry_id = t2.entry_id
WHERE
    t1.referenced_entry_id IS NOT NULL;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 21:40:21