0
select product.id,product.name,product.itemcode,sum(product.amount)as total_amount
from product where product.account in
select G.account from  report_results G 
where     G.status='Y')
group by product.id,product.name,product.itemcode

将上述内容视为QUERY1

现在为了执行一个操作我修改了QUERY1如下(我正在使用一个名为proc_temp的新表

 (select product.id,product.name,product.itemcode,sum(product.amount)as total_amount
   from product where product.account in
   (select G.account from  report_results G 
   where     G.status='Y'))as Input,proc_temp
   where Input.id=proc_temp.id

上面的查询格式不正确。我想将 query1 与一个新表 proc_temp 连接并比较它的两个 id 列。请帮助我在语法上更正这个问题。

4

2 回答 2

1

您需要添加一个SELECT子句。我不能保证这个查询,因为我不知道你想做什么,但类似:

select i.*
from (
    select product.id, product.name, product.itemcode, sum(product.amount) as total_amount
    from product
    where product.account in (
            select G.account
            from report_results G
            where G.status = 'Y'
            )
) i
inner join proc_temp t on i.id = t.id
于 2012-09-04T14:59:39.893 回答
1

我会摆脱子查询,并使用内部联接。除此之外,以下查询假设 Input.id 是 G.account

select p.id,p.name,p.itemcode,sum(p.amount)as total_amount
from product p
inner join report_results g on (p.account = g.account)
inner join proc_temp pt on (g.account = pt.id)
where g.status='Y'
group by product.id,product.name,product.itemcode
于 2012-09-04T15:05:06.850 回答