Jump to content

Recommended Posts

ola pessoal, sera que voces podem me ajudar por gentileza, segue script

 

WITH Dados AS (

SELECT idOrcMatDet,
       idGrupo,
       idSubGrupo,
       omd.numeroOrcamento,
       orcmatdet_preco4lista,
       baseProduto       
  FROM OrcMatDet omd
 INNER JOIN ORCCAB cab
    ON omd.numeroOrcamento = cab.numeroOrcamento
 WHERE orccab_Cadastro BETWEEN '20-12-2017 00:00:00.000' AND '20-01-2018 00:00:00.000'
),


Resumo AS (
SELECT R.*,TotalGrupo = ( SELECT SUM(orcmatdet_preco4lista)
                            FROM  Dados R WHERE R.idSubGrupo = 04
                           )
     FROM Dados R
)
SELECT  * FROM Resumo order by idSubGrupo

 

----------------------------

 

me da este resultado 

 

idOrcMatDet    idGrupo    idSubGrupo    numeroOrcamento    orcmatdet_preco4lista    baseProduto    TotalGrupo
13900                    5                    04                      EL310010                    4115,21                            Eletrofrio    4115,21
13899                    5                   07                        EL310010                     0,00                            ariam    4115,21
13969                    5                    07                        EL310011                      0,00                            ariam    4115,21
13903                    5                    11                        EL310010                     548,44                            Eletrofrio    4115,21
13904                     5                    11                        EL310010                      645,20                            Eletrofrio    4115,21
13901                      5                    12                       EL310010                     4922,62                            Eletrofrio    4115,21
13902                     5                    12                        EL310010                     5013,93                             Eletrofrio    4115,21
13970                      5                    12                        EL310011                      3717,87                             Eletrofrio    4115,21
13971                     5                   12                        EL310011                      3915,09                            Eletrofrio    4115,21
13972                      5                   12                        EL310011                     3645,93                            Eletrofrio    4115,21
13973                      5                   12                       EL310011                      4077,69                            Eletrofrio    4115,21
13974                      5                   12                        EL310011                      685,26                            Eletrofrio    4115,21
13975                      5                    12                       EL310011                      3570,22                            fast    4115,21
13976                     5                    12                        EL310011                     3365,33                            Eletrofrio    4115,21
13977                      5                   12                        EL310011                      3732,83                            fast    4115,21

 

eu gostaria que no total grupo aparecesse o valor de cada IDSUBGRUPO 

 

 

 

 

Share this post


Link to post
Share on other sites

RESPOSTA

 

 

 

 

WITH Dados AS (

SELECT idOrcMatDet,
       idGrupo,
       idSubGrupo,
       omd.numeroOrcamento,
       orcmatdet_preco4lista,
       baseProduto       
  FROM OrcMatDet omd
 INNER JOIN ORCCAB cab
    ON omd.numeroOrcamento = cab.numeroOrcamento
 WHERE orccab_Cadastro BETWEEN '20-12-2017 00:00:00.000' AND '20-01-2018 00:00:00.000'
)

SELECT distinct R.idGrupo,baseProduto,
       TotalGrupo = SUM(orcmatdet_preco4lista) OVER(PARTITION BY idGrupo)
  FROM Dados R
order by idGrupo

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By thiagoguedes
      Olá pessoal,  estou dando meus primeiros passos no php e gostaria da ajuda de vocês. 
       
      Estou exibindo os dados da  tabela frete e nela há a chave estrangeira cod_empresa, que informa qual empresa está oferecendo o frete. 
      Quero exibir o nome da empresa quando apresentar o nome da empresa e não o código, então estou fazendo um INNER JOIN pra tabela empresa e tentando exibir o campo nomefantasia_empresa.
       
      Meu código, porém, está dando erro e não consigo corrigir. Vocês podem me ajudar?
       
      <?php include "conexao.php"; $result_fretes = "SELECT * FROM frete AS f INNER JOIN empresa AS e ON f.cod_empresa = e.cod_empresa"; $resultado_cursos = mysqli_query($conn, $result_cursos); while ($rows_cursos = mysqli_fetch_array($resultado_cursos)){ echo $rows_cursos['cod_frete']; echo $rows_cursos['cod_empresa']; echo $rows_cursos['rasaosocial_empresa']; } ?>  
    • By Ygor Guedes
      Boa tarde meu pessoal. Preciso da ajuda de vocês em uma consulta baseada em Inner Join + Group By. Irei deixar as tabelas e a consulta que eu tenho, para melhor visualização:
       
      Consulta: 
      SELECT tab_garagens.onibus_ponto, tab_garagens.onibus_prefixo, data FROM pontos INNER JOIN tab_garagens ON pontos.onibus_ponto = tab_garagens.onibus_ponto Tabela pontos:
      | onibus_ponto |                data                |
      |           10           |  2019-06-03 12:00:00 |
      |           10           |  2019-06-03 12:10:00 |
      |           44           |  2019-06-03 12:00:00 |
       
      Tabela tab_garagens:
      | onibus_ponto |  onibus_prefixo  |
      |           10           |      DE700            |
      |           44           |      GL030            |
       
      A minha consulta está trazendo a informação mais antiga da data; o que eu preciso é tipo um ORDER BY com data mais recente, onde eu pego a data mais atual do registro agrupado na coluna 'onibus_ponto'.
       
      Eu gostaria que saísse assim: 
       
      | onibus_ponto |  onibus_prefixo |             data                  |
      |        10              |       DE700          | 2019-06-03 12:10:00 |
      |        44              |       GL030          | 2019-06-03 12:00:00 |
       
      Se puderem me ajudar, fico agradecido
    • By Danado_
      como eu pego os dados "pagseguro"?
       
      tipo, to fazendo um inner join e meu select ta assim:
      SELECT * FROM lista_de_presente_selecionada INNER JOIN lista_de_presente ON lista_de_presente_selecionada.id_item = lista_de_presente.id  
       

    • By Danado_
      como eu seleciono da seguinte forma: 
       
      tabela cadastro;
      id 1 - fulano
      id 2 - bertano
      id 3 - fulaninho
      ---------------------------------------
      Observações:
      estou usando um select multiple e dou um insert into na tabela a abaixo ficando assim:
      ----------------------------------------
      tabela mesas
      id 1 - fulano, bertano
      -----------------------------------------

      ok até ai!
       
      AGORA QUE PRECISO DA AJUDA DE VOCÊS!
      preciso fazer um inner, left ou righ para TRAZER APENAS O  id 3 - fulaninho (no caso verificando as duas tabelas e selecionando apenas o que NAO foi selecionado!)
       
      tenho isso:
       
      <select name="nome[]" multiple> <?php $mapa = mysqli_query($con, "SELECT * FROM cadastro'"); while($dados = mysqli_fetch_assoc($mapa)){ ?> <option><?php echo $dados['nome']; ?></option> <?php } ?> </select>
       
    • By Eliton Bryan
      Boa noite.
      Amigos sou leigo no sql e preciso de uma ajudinha.
      Tenho duas tabela e preciso obter registro para montar um relatório.
      EX: a primeira tabela é primaria. atende e as colunas é: tp_atendimento, dt_atendimento, ds_especialidade.
      A segunda tabela é especialid e a coluna é ds_especialide.
      Preciso obter o resultado das duas.
       
      Quantidade de atendimento por mês, dias, hora e especialidade.
      Ex: de um resultado:
      ATENDIMENTOS POR MÊS -  ATENDIMENTOS POR DIAS - ATENDIMENTO POR HORAS  - ESPECIALIDADE     
                             144                                                    48                                                     2                     CLÍNICA MÉDICA
                              288                                                   96                                                     4                     CARDIOLOGIA
       
      Se alguém poder me ajudar ficarei muito agradecido.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.