gpt4 book ai didi

sql - 并排显示两个表中仅匹配部分字段的记录

转载 作者:行者123 更新时间:2023-12-04 18:47:33 24 4
gpt4 key购买 nike

我有两个表, table A :

Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY
----------- ------- ------------ ---------- ---------- ---
123 AB 1/1/2012 111 222 1
123 AB 1/1/2012 111 222 1
456 AC 2/1/2012 333 444 1

table B :
Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY
----------- ------- ------------ ---------- ---------- ---
123 AB 1/1/2012 111 222 2
456 AB 1/1/2012 124 111 1

我想匹配数据,以便 123 中客户 table A 的记录分组为:
Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY
-----------  -------  ------------  ----------  ----------  ---
123 AB 1/1/2012 111 222 2

并且在它的右侧出现来自 table B 的以下记录:
Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY
-----------  -------  ------------  ----------  ----------  ---
123 AB 1/1/2012 111 222 2

另外(总是有一个)我们想在 table A 中显示第三条记录,在 table B 中显示第二条记录(客户 456 ),因为它们有相同的 Customer_IDProductDate of Sale
所以它应该看起来像
Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY  Customer_ID  Product  Date Of Sale  Pay Meth 1  Pay Meth 2  QTY
-----------  -------  ------------  ----------  ----------  ---  -----------  -------  ------------  ----------  ----------  ---
123 AB 1/1/2012 111 222 1 123 AB 1/1/2012 111 222 1
456 AC 2/1/2012 333 444 1 456 AB 1/1/2012 124 111 1

最佳答案

您可以对每个表进行子查询以获取每个客户的总数量,然后按客户 ID 加入结果
例如

SELECT a.*, b.*
FROM (
Select customer_id, product, dateofsale, PayMeth1, PayMeth2, SUM(Qty) as Qty
from TableA
Group by customer_id, product, dateofsale, PayMeth1, PayMeth2
) a
JOIN (
Select customer_id, product, dateofsale, PayMeth1, PayMeth2, SUM(Qty) as Qty
from TableB
Group by customer_id, product, dateofsale, PayMeth1, PayMeth2
) b
ON a.customer_id = b.customer_id

关于sql - 并排显示两个表中仅匹配部分字段的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11783343/

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