回答

收藏

使用MIN()进行左联接而没有重复值

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

我有一张table_1:
& z& l7 }" Z6 F5 C  L8 Hid  custno 12 12   23  33和一个table_2:3 a1 j" C8 \6 |/ l7 Q; v
id  custno  qty  descr1 1  1      10     a2   1       7     b3  2       4                          c4 3 3      7    d5 5  1    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              5                          5             5              5        5 5                           5                                             5            5      5 5 5 5 5   5 5                                              5              5           5 5                                    5    e6  1      5                     5             5                5                                                           5                                                                           5                       5                    5                                       5                            5               5                         5                                5                                       5                                                                                                                   5                                                       f当我运行此查询以显示每个客户的最小订单量时:7 O4 @4 r7 C4 G# I/ |
SELECT DISTINCT table_1.custno,table_2.qty,table_2.descr FROM table_1 LEFT OUTER JOIN table_2     ON  table_1.custno = table_2.custno AND  qty = (SELECT MIN(qty) FROM table_2 WHERE table_2.custno = table_1.custno   )然后我得到了这个结果:
; |% q: h/ Q- V4 x$ g9 L7 T4 O# Mcustno qty  descr1    5     5                5                   5                              e 1    5     5                5                   5                              f2      4          c3 3       7                                                                                                                                                                                                                                                                                                                                                                  d客户1每次出现两次,最小数量相同(描述不同),但我只想看到客户1出现一次。我不在乎 e作为描述还是 f作为描述的记录。
0 X! R$ c4 T" Z9 ~* q3 s! Y5 ^5 B                                                               
1 q1 w( o" m+ g( n) ]% x! T    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则