gpt4 book ai didi

mysql - 根据条件排序并添加到表中

转载 作者:行者123 更新时间:2023-11-29 19:53:59 24 4
gpt4 key购买 nike

表 1 有 4 列,模拟数据如下所示...

MASTER_ID  SUB_ID  DESC   Percent
1234 ABC TEXT 80
1234 XYZ TEXT2 20
1234 XYZ TEXT4 30
9876 XYZ TEXT2 20
9876 XYZ TEXT5 10
9876 ABC TEXT1 20

表 2 包含每个 MASTER_ID 的 DESC 的不同值,即表 1 的第 3 列 ....

MASTER_ID  DESC
1234 TEXT
1234 TEXT2
1234 TEXT4
9876 TEXT2
9876 TEXT5
9876 TEXT1

我需要查看 TABLE1 并找到每个特定 MASTER_ID 的每个 SUB_ID 缺少哪些 DESC。每个 MASTER_ID 都与另一个无关...这意味着我不应该看到 MASTER_PLAN 中不存在的描述。例如,MASTER_ID 9876 的 DESC 为 TEXT5。此 DESC 只能出现在 MASTER_ID 的 9876 DESC 中。 SUB_ID可以存在于不同的MASTER_ID中。但如前所述,每个 MASTER_ID 都应被视为独立的。

决赛 table 应该是这样的......

MASTER_ID  SUB_ID  DESC   Percent
1234 ABC TEXT 80
1234 ABC TEXT2 0
1234 ABC TEXT4 0
1234 XYZ TEXT2 20
1234 XYZ TEXT4 30
1234 XYZ TEXT 0
9876 XYZ TEXT2 20
9876 XYZ TEXT5 10
9876 XYZ TEXT1 0
9876 ABC TEXT1 20
9876 ABC TEXT2 0
9876 ABC TEXT5 0

最佳答案

您可以尝试以下查询

select t3.master_id, t3.sub_id, t3.Desc1, case when t4.percentage is null then 0 else t4.percentage end percentage
from
(select distinct t1.master_id, sub_id, t2.Desc1
from table1 t1
cross join table2 t2
where t1.master_id = t2.master_id) t3
left join table1 t4
on t4.master_id = t3.master_id
and t3.sub_id = t4.sub_id
and t3.desc1 = t4.desc1

上面的查询给出了下面的结果

enter image description here

希望这对您有所帮助。

关于mysql - 根据条件排序并添加到表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40744460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com