___ ___ erkimt Error adding COUNT in CONCAT ______ qstntxt ___

When I try to add %code% it returns error, but when I shoot,% %code% works normal. Follows the error:

%code%

Script:

%pre%

I want to return this result:

%pre%

I followed this site:

  

link

Database:

TB_PEDIDO:

TB_ITEM_PEDIDO_PRODUTO:

TB_ITEM_PEDIDO_PRODUTO_INGREDIENTE:

TB_PRODUTO:

TB_PRODUTOS_INGREDIENTES:

TB_INGREDIENTES:

    
______ ___ azszpr34739

The Best Solution is to process it in the application, but if there is a reason to solve the SELECT, I suggest you use a sub-select the number of items in each product_no.

See if it works with the solution below:

%pre%     
______ ___ azszpr34733

Fields in aggregating functions as %code% % %code% %%% or co_de %code% should stay out of the clause %code% .

Try the following:

%pre%     
___

1

When I try to add COUNT it returns error, but when I shoot,% script works normal. Follows the error:

Invalid use of group function

Script:

SELECT DISTINCT 
        TB_PRODUTOS.ID_PRODUTO,
        CONVERT(
            GROUP_CONCAT(
                DISTINCT CONCAT(
                    TB_PRODUTOS.NOME_PRODUTO,
                    "(", COUNT(TB_PRODUTOS.ID_PRODUTO), ")"
                ) 
                SEPARATOR ', '
            ) 
            USING 'utf8'
        ) AS NOME_PRODUTO,      
        TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO,
        TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    FROM TB_ITEM_PEDIDO_PRODUTO     
    INNER JOIN TB_PEDIDO ON TB_PEDIDO.ID_PEDIDO = TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO  
    INNER JOIN TB_PRODUTOS ON TB_PRODUTOS.ID_PRODUTO = TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    WHERE TB_PEDIDO.ID_PESSOA = 1
    GROUP BY TB_PEDIDO.ID_PEDIDO

I want to return this result:

Produto
--------------------------------
produto(2), testando(1), teste(4)

I followed this site:

  

link

Database:

TB_PEDIDO:

TB_ITEM_PEDIDO_PRODUTO:

TB_ITEM_PEDIDO_PRODUTO_INGREDIENTE:

TB_PRODUTO:

TB_PRODUTOS_INGREDIENTES:

TB_INGREDIENTES:

    
asked by anonymous 01.10.2014 / 14:11

2 answers

1
___ ___ erkimt Error adding COUNT in CONCAT ______ qstntxt ___

When I try to add %code% it returns error, but when I shoot,% %code% works normal. Follows the error:

%code%

Script:

SELECT DISTINCT 
    TB_PRODUTOS.ID_PRODUTO,
    CONVERT(
        GROUP_CONCAT(
            DISTINCT CONCAT(
                TB_PRODUTOS.NOME_PRODUTO,
                "(", 
                (SELECT COUNT(1) FROM TB_PRODUTOS AS SUB_PRODUTOS WHERE SUB_PRODUTOS.ID_PRODUTO = TB_PRODUTOS.ID_PRODUTO),
                ")"
            ) 
            SEPARATOR ', '
        ) 
        USING 'utf8'
    ) AS NOME_PRODUTO,      
    TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO,
    TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
FROM TB_ITEM_PEDIDO_PRODUTO     
INNER JOIN TB_PEDIDO ON TB_PEDIDO.ID_PEDIDO = TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO  
INNER JOIN TB_PRODUTOS ON TB_PRODUTOS.ID_PRODUTO = TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
WHERE TB_PEDIDO.ID_PESSOA = 1
GROUP BY TB_PEDIDO.ID_PEDIDO

I want to return this result:

SELECT DISTINCT 
    TB_PRODUTOS.ID_PRODUTO,
    CONVERT(
        GROUP_CONCAT(
            DISTINCT CONCAT(
                TB_PRODUTOS.NOME_PRODUTO,
                "(", 
                (SELECT COUNT(1) FROM TB_PRODUTOS AS SUB_PRODUTOS WHERE SUB_PRODUTOS.ID_PRODUTO = TB_PRODUTOS.ID_PRODUTO),
                ")"
            ) 
            SEPARATOR ', '
        ) 
        USING 'utf8'
    ) AS NOME_PRODUTO,      
    TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO,
    TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
FROM TB_ITEM_PEDIDO_PRODUTO     
INNER JOIN TB_PEDIDO ON TB_PEDIDO.ID_PEDIDO = TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO  
INNER JOIN TB_PRODUTOS ON TB_PRODUTOS.ID_PRODUTO = TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
WHERE TB_PEDIDO.ID_PESSOA = 1
GROUP BY TB_PEDIDO.ID_PEDIDO

I followed this site:

  

link

Database:

TB_PEDIDO:

TB_ITEM_PEDIDO_PRODUTO:

TB_ITEM_PEDIDO_PRODUTO_INGREDIENTE:

TB_PRODUTO:

TB_PRODUTOS_INGREDIENTES:

TB_INGREDIENTES:

    
______ ___ azszpr34739

The Best Solution is to process it in the application, but if there is a reason to solve the SELECT, I suggest you use a sub-select the number of items in each product_no.

See if it works with the solution below:

%pre%     
______ ___ azszpr34733

Fields in aggregating functions as %code% % %code% %%% or co_de %code% should stay out of the clause %code% .

Try the following:

%pre%     
___
03.10.2014 / 01:14
1
___ ___ erkimt Error adding COUNT in CONCAT ______ qstntxt ___

When I try to add max it returns error, but when I shoot,% min works normal. Follows the error:

avg

Script:

SELECT DISTINCT 
        TB_PRODUTOS.ID_PRODUTO,
        CONVERT(
            GROUP_CONCAT(
                DISTINCT CONCAT(
                    TB_PRODUTOS.NOME_PRODUTO,
                    "(", COUNT(TB_PRODUTOS.ID_PRODUTO), ")"
                ) 
                SEPARATOR ', '
            ) 
            USING 'utf8'
        ) AS NOME_PRODUTO,      
        TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO,
        TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    FROM TB_ITEM_PEDIDO_PRODUTO     
    INNER JOIN TB_PEDIDO ON TB_PEDIDO.ID_PEDIDO = TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO  
    INNER JOIN TB_PRODUTOS ON TB_PRODUTOS.ID_PRODUTO = TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    WHERE TB_PEDIDO.ID_PESSOA = 1

I want to return this result:

SELECT DISTINCT 
        TB_PRODUTOS.ID_PRODUTO,
        CONVERT(
            GROUP_CONCAT(
                DISTINCT CONCAT(
                    TB_PRODUTOS.NOME_PRODUTO,
                    "(", COUNT(TB_PRODUTOS.ID_PRODUTO), ")"
                ) 
                SEPARATOR ', '
            ) 
            USING 'utf8'
        ) AS NOME_PRODUTO,      
        TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO,
        TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    FROM TB_ITEM_PEDIDO_PRODUTO     
    INNER JOIN TB_PEDIDO ON TB_PEDIDO.ID_PEDIDO = TB_ITEM_PEDIDO_PRODUTO.ID_PEDIDO  
    INNER JOIN TB_PRODUTOS ON TB_PRODUTOS.ID_PRODUTO = TB_ITEM_PEDIDO_PRODUTO.ID_PRODUTO
    WHERE TB_PEDIDO.ID_PESSOA = 1

I followed this site:

  

link

Database:

TB_PEDIDO:

TB_ITEM_PEDIDO_PRODUTO:

TB_ITEM_PEDIDO_PRODUTO_INGREDIENTE:

TB_PRODUTO:

TB_PRODUTOS_INGREDIENTES:

TB_INGREDIENTES:

    
______ ___ azszpr34739

The Best Solution is to process it in the application, but if there is a reason to solve the SELECT, I suggest you use a sub-select the number of items in each product_no.

See if it works with the solution below:

%pre%     
______ ___ azszpr34733

Fields in aggregating functions as count % GROUP BY %%% or co_de %code% should stay out of the clause %code% .

Try the following:

%pre%     
___
02.10.2014 / 23:59