Query sql INNER JOIN with WHERE and GROUP BY

0

I have this query in my database only that I wanted to insert a sum in the a.preco_produto and do for GROUP BY only if I put GROUP BY a.codigo_loja in that query of that error > # 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'GROUP BY stores' at line 7

SELECT
a.codigo_loja_produto, a.codigo_loja, a.codigo_produto, b.nome_produto, b.codigo_barras, b.secoes_produtos, b.endereco_fotos,a.preco_produto,a.ultimo_preco, a.ultima_atualizacao
FROM loja_produto AS a
INNER JOIN  produtos AS b  on a.codigo_produto = b.cod_produto
INNER JOIN  lojas AS c on a.codigo_loja = c.cod_loja
WHERE a.codigo_loja = 3 Limit 20 OFFSET 0
GROUP BY a.codigo_loja
    
asked by anonymous 27.03.2018 / 19:13

1 answer

2

It is necessary to group all columns with equal types.

Ex:

SELECT 
    a.codigo_loja_produto, 
    a.codigo_loja, 
    a.codigo_produto, 
    b.nome_produto, 
    b.codigo_barras, 
    b.secoes_produtos, 
    b.endereco_fotos,
    a.preco_produto,
    a.ultimo_preco, 
    a.ultima_atualizacao 
FROM loja_produto AS a 
    INNER JOIN produtos AS b ON a.codigo_produto = b.cod_produto 
    INNER JOIN lojas AS c ON a.codigo_loja = c.cod_loja 
WHERE a.codigo_loja = 3 
GROUP BY 
    a.codigo_loja_produto, 
    a.codigo_loja 
LIMIT 20 
OFFSET 0'

Taking into account that the product store code and store code contain equal records, to do this you must enter all the columns that have identical registration.

    
27.03.2018 / 19:25