2013-10-24 55 views
0

我有以下代碼:MYSQL INSERT INTO SELECT語句無效使用組功能的

select c.nome,(p.nome) as ultimo_produto 
from cliente c 
inner join compra cp on (c.cod_cli = cp.fk_cli) 
inner join produto p on(cp.fk_pod=p.cod_pro) 
where datc >=max(cp.datc) 
group by c.nome; 

希望得到客戶的名字和他買的最後一個產品的名稱,但錯誤的無效使用組功能

+0

什麼是'datc'在'where datc> = max(cp.datc)'..?我認爲它可能是'c.datc' –

+0

在where子句中不能使用'max'。這就是這個錯誤的含義。 –

回答

0
select c.nome, p.nome as ultimo_produto 
from cliente c 
inner join compra cp on (c.cod_cli = cp.fk_cli) 
inner join produto p on (cp.fk_pod=p.cod_pro) 
inner join 
(
    select cod_pro, max(datc) as mdatc 
    from produto 
    group by cod_pro 
) x on x.cod_pro = p.cod_pro and x.mdatc = p.datc 
group by c.nome