【问题标题】:Correlated Subquery with conditional SELECT?与条件选择相关的子查询?
【发布时间】:2016-05-06 21:24:53
【问题描述】:

我正在尝试对相关子查询做一些棘手的事情,我需要帮助。我正在使用 ACCESS 运行查询。这是数据结构:

表 1----------表 2 参考。 NO.---------参考。 NO.------------数量----------公司----------珠三角 7897879----------7890849--------------78.15----1000------ ----------BIP 4548694----------4548694----------------13.4-------- ----------1200----------------OOK 9878945----------4548694-- ---------210.8----1300--------- --------IUP 9848987----------1354987---------------120-----------------1500---- ------------YTE

REF.NO.表 1 中不再重复。它确实在表 2 中重复。我不想从表 1 中选择所有 REF.NO.,并为每个人输入 COMPANY 和该 REF.NO 的 PRD。来自表 2,其中 AMOUNT 最高。例如,我希望结果中的一行如下所示:

参考。 NO.------------数量----------公司----------珠三角 4548694--------------210.8----1300 ----------------IUP

我尝试做类似的事情:

(SELECT [TABLE 2].[COMPANY] WHERE [AMOUNT]=MAX([AMOUNT])

但这没有任何意义,查询甚至不会运行。请帮帮我!

【问题讨论】:

    标签: sql ms-access


    【解决方案1】:

    您可以使用相关子查询来做到这一点。我不确定table1 需要什么。仅使用表 2:

    select t2.*
    from table2 as t2
    where t2.amount = (select max(tt2.amount)
                       from table2 as tt2
                       where tt2.refno = t2.refno
                      );
    

    如果需要,您也可以使用 table1 合并过滤器。

    【讨论】:

    • 谢谢!通过对我的原始查询进行一些小的调整,这很有效。
    猜你喜欢
    • 1970-01-01
    • 2011-10-08
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-21
    相关资源
    最近更新 更多