回答

收藏

PostgresSql:比较两个表并获得其结果并将其与第三个表进行比较

技术问答 技术问答 161 人阅读 | 0 人回复 | 2023-09-12

表 2:trip_delivery_sales_lines
! s9 h- f/ ~3 T# E5 ]- X/ \    ------- --------------------- ------------ ---------- ------------ ------------- -------- -- | Sl no |     Order_date      | Partner_id | Route_id | Product_id | Product qty | amount |  | ------- --------------------- ------------ ---------- ------------ ------------- -------- -- |     1 | 2020-08-01 04:25:35 |      |        1522                |      |       |    100 |  ||    2 | 2021-09-11 02:25:35 |    |       130                130|     |      |    150 |  ||    3 | 2020-05-10 04:25:35 |      |        1522                |      |          3 |    123 |  ||     4 | 2021-02-16 01:10:35 |    |       130                130|      |         5 5 5 5                               55 5 5  5   5                                                                    5 5 5 5                                                                                   5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5           5555 5 5                    5 5 5         5 5 5 5 5           5 5 5 5 5    5 5 5 5 5 5                                                                                                                                                                                                                  5                 |    123 |  ||    5 | 2020-02-19 01:10:35 |      |        1522                |      |       |    600 |  ||     6 | 2021-03-20 01:10:35 |     |        1522                |     |           1 |    123 |  ||     7 | 2021-04-23 01:10:35 |    |        1522                |      |      |    200 |  ||    8 | 2021-07-08 01:10:35 |      |        1522                |      |          3 |     32 |  ||     9 | 2019-06-28 01:10:35 |    |        1522                |      |       |    100 |  ||    10 | 2018-11-14 01:10:35 |    |        1522                |      |         5 5 5 5                               55 5 5  5   5                                                                    5 5 5 5                                                                                   5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5           5555 5 5                    5 5 5         5 5 5 5 5           5 5 5 5 5    5 5 5 5 5 5                                                                                                                                                                                                                  5                 |     20 |  ||       |                     |            |          |            |             |        |  | ------- --------------------- ------------ ---------- ------------ ------------- -------- -- 表 2 中,我们必须是 route=在152 中找到合作伙伴,找到最后一个 2 销售 product_qty 通过desc order_date 选择]: M% u+ i+ g; K% E- x8 y
。它的结果可以在表 3 中找到。) [. I# n' B* ?0 |
34567 – Serial number – Serial number – Serial number [6] 表 3:表 1、2 结果
/ w( t7 ^& k- S2 s6 J    ------------ ------- | Partner_id | count | ------------ ------- |      |    5 ||     |     1 ||    |     6 ||            |       | ------------ ------- 我们想从表 4 中找到上面的 partner_ids 叶数
" v! n: u2 J$ j! P' c表 4 :coupon_leaf
$ `( _. L8 K9 a7 r    ------------ ------- | Partner_id | Leaf  | ------------ ------- |      34567 | XYZ1  ||     | XYZ2  ||     | DDHC  ||      34567 | DVDV  ||    | DVFDV ||     | FVFV  ||      34567 | FVV   ||            |       | ------------ ------- 我们可以找到结果:0 ]9 i+ D6 l/ a7 c+ R1 {
34567 – 334569-234570 -1表 5:表 4 结果$ \  H4 v/ H7 z# ~4 ^
    ------------ ------- | Partner_id | count | ------------ ------- |      |    3 ||     |    2 ||    |     1 ||            |       | ------------ ------- 现在我们要比较表3和表5* n, |1 R! i9 j  Z! \6 o
If partner_id count [table 3] > partner_id count [table 4]         Print partner_id我想要一个查询来完成所有这些操作+ ]% g) q4 N* Q
通过以下方式可以找到不同的方法partner_id:从表1
4 O- ]0 ]: X8 q4 J3 P; ZSELECT  DISTINCT partner_id FROM trip_delivery_sales ts WHERE ts.route_id='152' GROUP BY ts.partner_id                9 g) K9 s9 _& h1 i6 _& ~, W
    解决方案:                                                               
2 {, Z; L: R4 i; ~5 l9 h" @                                                                这回答了问题的原始版本。
; T: P, e0 G1 z( E+ ^您似乎想在汇总表2和表3之后进行比较。我不知道table为什么?它似乎没有任何效果。
0 T5 O8 |4 H3 c4 _所以:
2 L+ {6 x2 J+ ~8 p0 ?select *from (select partner_id,sum(quantity) as sum_quantity      from (select tdsl.*,                  row_number() over (partition by t2.partner_id order by order_date) as seqnum            from trip_delivery_sales_lines tdsl        tdsl      where seqnum  leaf_cnt
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则