gpt4 book ai didi

php - 选择数据标题加入详细信息最后一个 doc_num 标题是否升级?

转载 作者:行者123 更新时间:2023-11-29 19:10:57 25 4
gpt4 key购买 nike

我有两个表,名为 t_header 和 t_detail。

此数据 header

ID | doc_num | promotion
1 0001 0
2 0002 1

此数据详细信息

ID | doc_num | item | price
1 0001 2 100
2 0001 3 170
3 0001 4 102
4 0001 5 105
5 0002 3 120
6 0002 4 99
7 0002 7 165

如果promo = 1,那么详细价格将采取详细数据促销价格,对于上表如果该项目= 3那么将采取价格= 120,因为doc_num 002 promo = 1的项目,如果没有促销它将采用价格 docnum 001、001 num doc 标准价格,并按项目分组

输出

ID | doc_num | item | price | promotion
1 0001 2 100 0
5 0002 3 120 1
6 0002 4 99 1
4 0001 5 105 0
7 0002 7 165 0

最佳答案

我想您需要选择促销价格(如果有),否则您需要正常价格。因此,您应该在 LEFT JOIN 之后使用 IF 语句选择列。这个查询可能有帮助:

SELECT
if(td_prom.ID, td_prom.ID, td_norm.ID) as ID,
th.doc_num,
if(td_prom.price, td_prom.price, td_norm.price) as price,
if(td_prom.item, td_prom.item, td_norm.item) as item,
th.promo
FROM
t_header th
LEFT JOIN t_detail as td_norm ON th.doc_num = td_norm.doc_num AND th.promo = 0
LEFT JOIN t_detail as td_prom ON th.doc_num = td_prom.doc_num AND th.promo = 1
GROUP BY item

关于php - 选择数据标题加入详细信息最后一个 doc_num 标题是否升级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43087408/

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