GROUP BY子句中的子查询的SQL

问题描述:

我想by子句中子查询中使用组是从第GROUP BY子句中的子查询的SQL

select userID,count(id) 
from 
(
    (
     select id,max(bidAmount),userID 
     from Bids 
     group by id,bidAmount 
    ) 
    group by userID 
); 

但是这给错误

错误:附近的“组”:语法错误

是否有可能在sql中的from子句的子查询中使用group by子句?

+1

我编辑了你的问题,使它更容易阅读。你没有说明你使用的是哪种sql方言,但是你的parantheesis中有一个明显的语法错误。您还应该使用subquerys中的别名,因为许多sql服务器对子查询执行此操作。 – stefan

检查你的(),他们是不是在正确的地方。应该更多的东西是这样的:

select w.userID,count(w.id) 
from (select id,max(bidAmount),userID from Bids group by id, userID) w 
group by w.userID 
+0

您的内联视图已损坏 - 按错误列分组。 –

试试这个:

select userID,count(id) 
from (

select id,max(bidAmount),userID from Bids group by id,userID 

) as tmp 

group by userID 

您可以在子查询中使用group by,但你的语法是关闭的。

select userID,count(id) 
from 
(
     select id,max(bidAmount),userID 
     from Bids 
     group by id,userID 
) 
GROUP BY userid