如何在没有子查询的情况下重新编写以下查询

时间:2018-01-18 09:45:43

标签: sql-server join sql-server-2012 subquery correlated-subquery

enter image description here

这是表格: 要在加入后从“orders”和“despatch”表中获取所有列,请使用以下条件 -

  1. 'ord_date'应该是'orders'表中最大的(最大),

  2. 最大(最大)'ord_date'应该等于'orders'表的'ord_date',

  3. 'orders'表的'agent_code'应该等于'despatch'表的'agent_code'以便加入,

  4. 查询:

    function refIt(theDOM) {
      const height = theDOM.clientHeight;
      this.setState({ height });
    }
    
    return (<div ref={theDOM => refIt(theDOM)}>
      <div height={this.state.height}>
      </div>
    </div>);
    

    有没有办法在没有子查询的情况下重新编写查询

    SELECT * FROM orders 
    LEFT JOIN despatch 
    ON orders.agent_code = despatch.agent_code 
    WHERE orders.ord_date=(
    SELECT MAX(ord_date) FROM orders where orders.agent_code = 'A004');
    

1 个答案:

答案 0 :(得分:0)

只需在您的选择中使用MAX:

SELECT MAX (ord_date), ColA, ColB, ColC
FROM orders 
LEFT JOIN despatch ON orders.agent_code = despatch.agent_code 
GROUP BY ColA, ColB, ColC