Estou começando no uso do MySQL e ainda não domino o uso de criação de subquery e afins.
As vezes necessito gerar consultas que retornem valores de forma individual, totalizado por produto e totalizando geral, como na segunda caixa abaixo, porém não consigo e, vergonhosamente, acabo optando pelo Excel.
Qual a forma correta de criar estas querys?
SELECT
SB1_Desc AS "Descrição",
REPLACE(REPLACE(REPLACE(FORMAT(SD2_PrcUni, 6), '.', '|'), ',', '.'), '|', ',') AS "preço Unitario",
REPLACE(REPLACE(REPLACE(FORMAT(SD2_Quant, 6), '.', '|'), ',', '.'), '|', ',') AS "Quantidade",
REPLACE(REPLACE(REPLACE(FORMAT(SD2_ValItem, 6), '.', '|'), ',', '.'), '|', ',') AS "Valor do Item",
SF2_Emissao AS "Emissao",
SF2_NrNFe AS "Nr NFe",
SA1_Fantasia AS "Nome Fantasia"
FROM SD2
INNER JOIN SB1 ON SD2_IDSB1 = SB1_ID
INNER JOIN SF2 ON SD2_IDSF2 = SF2_ID
INNER JOIN SA1 ON SF2_IDSA1 = SA1_ID
WHERE SF2_Emissao BETWEEN '2014-08-01' AND '2014-09-30'
UNION ALL
SELECT
"Total:",
NULL,
REPLACE(REPLACE(REPLACE(FORMAT(SUM(SD2_Quant), 6), '.', '|'), ',', '.'), '|', ','),
REPLACE(REPLACE(REPLACE(FORMAT(SUM(SD2_ValItem), 6), '.', '|'), ',', '.'), '|', ','),
NULL,
NULL,
NULL
FROM SD2
INNER JOIN SB1 ON SD2_IDSB1 = SB1_ID
INNER JOIN SF2 ON SD2_IDSF2 = SF2_ID
INNER JOIN SA1 ON SF2_IDSA1 = SA1_ID
WHERE SF2_Emissao BETWEEN '2014-08-01' AND '2014-09-30'
Codigo |Descrição |preço Unt |Quant |Valor Item |Emissão |Nr Nfe |Nome Fantasia
=============================================================================
1 |Produto A |100,00 |1 |100,00 |01/09 |A1 |Empresa A LTDA
1 |Produto A |100,00 |3 |300,00 |02/09 |A2 |Empresa B LTDA
1 |Produto A |100,00 |5 |500,00 |03/09 |A3 |Empresa C LTDA
1 |Produto A |100,00 |2 |200,00 |04/09 |A4 |Empresa A LTDA
1 |Produto A |100,00 |4 |400,00 |05/09 |A5 |Empresa B LTDA
=============================================================================
Subtotal |Produto A |15 |1500,00
Codigo |Descrição |preço Unt |Quant |Valor Item |Emissão |Nr Nfe |Nome Fantasia
=============================================================================
2 |Produto B |50,00 |6 |300,00 |06/09 |A6 |Empresa A LTDA
2 |Produto B |50,00 |8 |400,00 |07/09 |A7 |Empresa B LTDA
2 |Produto B |50,00 |10 |500,00 |08/09 |A8 |Empresa C LTDA
2 |Produto B |50,00 |7 |350,00 |09/09 |A9 |Empresa A LTDA
2 |Produto B |50,00 |9 |450,00 |10/09 |A0 |Empresa B LTDA
=============================================================================
Subtotal |Produto B |40 |2000,00
Codigo |Descrição |preço Unt |Quant |Valor Item |Emissão |Nr Nfe |Nome Fantasia
=============================================================================
3 |Produto C |170,00 |11 |1870,00 |11/09 |B1 |Empresa A LTDA
3 |Produto C |170,00 |13 |2210,00 |12/09 |B2 |Empresa B LTDA
3 |Produto C |170,00 |15 |2550,00 |13/09 |B3 |Empresa C LTDA
3 |Produto C |170,00 |12 |2040,00 |14/09 |B4 |Empresa A LTDA
3 |Produto C |170,00 |14 |2380,00 |15/09 |B5 |Empresa B LTDA
=============================================================================
Subtotal |Produto C |65 |11050,00
=============================================================================
Total |120 |14550,00
Pergunta
ImBigBoo
Bom Dia,
Estou começando no uso do MySQL e ainda não domino o uso de criação de subquery e afins.
As vezes necessito gerar consultas que retornem valores de forma individual, totalizado por produto e totalizando geral, como na segunda caixa abaixo, porém não consigo e, vergonhosamente, acabo optando pelo Excel.
Qual a forma correta de criar estas querys?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.